Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / Structures / WithStatement.cs / 1 / WithStatement.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Common.Utils; using System.Text; using System.Collections.Generic; using System.Data.Mapping.ViewGeneration.CqlGeneration; using System.Data.Metadata.Edm; using System.Diagnostics; namespace System.Data.Mapping.ViewGeneration.Structures { // effects: A class to denote a With statement internal class WithStatement : InternalBase { #region Constructors ////// effects: Creates a case statement for the field "memberPath" /// with no clauses /// internal WithStatement(EntitySet entitySetForToEnd, EntityType entityTypeForToEnd, EntityType entityTypeForFromEnd, AssociationSet associationSet, string fromRoleName, string toRoleName, IEnumerablememberPathsForEndMembers) { m_entitySetForToEnd = entitySetForToEnd; m_entityTypeForToEnd = entityTypeForToEnd; m_entityTypeForFromEnd = entityTypeForFromEnd; m_memberPathsForEndMembers = memberPathsForEndMembers; m_associationSet = associationSet; m_fromRoleName = fromRoleName; m_toRoleName = toRoleName; } #endregion #region Fields private EntitySet m_entitySetForToEnd; private EntityType m_entityTypeForToEnd; private EntityType m_entityTypeForFromEnd; private AssociationSet m_associationSet; private string m_fromRoleName; private string m_toRoleName; private IEnumerable m_memberPathsForEndMembers; #endregion #region Properties internal EntityType EntityTypeForFromEnd { get { return m_entityTypeForFromEnd; } } #endregion #region Methods // effects: For the given With Statement, generates the CQL for // it. internal StringBuilder AsCql(StringBuilder builder, string blockAlias, int indentLevel) { StringUtil.IndentNewLine(builder, indentLevel + 1); builder.Append("RELATIONSHIP("); List fields = new List (); // If the variable is a relation end, we will gets it scope Extent, e.g., CPerson1 for an // the CPerson end of CPersonAddress1 builder.Append("CREATEREF("); CqlWriter.AppendEscapedQualifiedName(builder, m_entitySetForToEnd.EntityContainer.Name, m_entitySetForToEnd.Name); builder.Append(", ROW("); foreach (MemberPath memberPath in m_memberPathsForEndMembers) { string fullFieldAlias = CqlWriter.GetQualifiedName(blockAlias, memberPath.CqlFieldAlias); fields.Add(fullFieldAlias); } StringUtil.ToSeparatedString(builder, fields, ", ", null); builder.Append(')'); builder.Append(","); CqlWriter.AppendEscapedTypeName(builder, m_entityTypeForToEnd); builder.Append(')'); builder.Append(','); CqlWriter.AppendEscapedTypeName(builder, m_associationSet.ElementType); builder.Append(','); CqlWriter.AppendEscapedName(builder, m_fromRoleName); builder.Append(','); CqlWriter.AppendEscapedName(builder, m_toRoleName); builder.Append(')'); builder.Append(' '); return builder; } // Repeat of AsCql but don't have all the info internal override void ToCompactString(StringBuilder builder) { throw new NotImplementedException(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Data.Common.Utils; using System.Text; using System.Collections.Generic; using System.Data.Mapping.ViewGeneration.CqlGeneration; using System.Data.Metadata.Edm; using System.Diagnostics; namespace System.Data.Mapping.ViewGeneration.Structures { // effects: A class to denote a With statement internal class WithStatement : InternalBase { #region Constructors ////// effects: Creates a case statement for the field "memberPath" /// with no clauses /// internal WithStatement(EntitySet entitySetForToEnd, EntityType entityTypeForToEnd, EntityType entityTypeForFromEnd, AssociationSet associationSet, string fromRoleName, string toRoleName, IEnumerablememberPathsForEndMembers) { m_entitySetForToEnd = entitySetForToEnd; m_entityTypeForToEnd = entityTypeForToEnd; m_entityTypeForFromEnd = entityTypeForFromEnd; m_memberPathsForEndMembers = memberPathsForEndMembers; m_associationSet = associationSet; m_fromRoleName = fromRoleName; m_toRoleName = toRoleName; } #endregion #region Fields private EntitySet m_entitySetForToEnd; private EntityType m_entityTypeForToEnd; private EntityType m_entityTypeForFromEnd; private AssociationSet m_associationSet; private string m_fromRoleName; private string m_toRoleName; private IEnumerable m_memberPathsForEndMembers; #endregion #region Properties internal EntityType EntityTypeForFromEnd { get { return m_entityTypeForFromEnd; } } #endregion #region Methods // effects: For the given With Statement, generates the CQL for // it. internal StringBuilder AsCql(StringBuilder builder, string blockAlias, int indentLevel) { StringUtil.IndentNewLine(builder, indentLevel + 1); builder.Append("RELATIONSHIP("); List fields = new List (); // If the variable is a relation end, we will gets it scope Extent, e.g., CPerson1 for an // the CPerson end of CPersonAddress1 builder.Append("CREATEREF("); CqlWriter.AppendEscapedQualifiedName(builder, m_entitySetForToEnd.EntityContainer.Name, m_entitySetForToEnd.Name); builder.Append(", ROW("); foreach (MemberPath memberPath in m_memberPathsForEndMembers) { string fullFieldAlias = CqlWriter.GetQualifiedName(blockAlias, memberPath.CqlFieldAlias); fields.Add(fullFieldAlias); } StringUtil.ToSeparatedString(builder, fields, ", ", null); builder.Append(')'); builder.Append(","); CqlWriter.AppendEscapedTypeName(builder, m_entityTypeForToEnd); builder.Append(')'); builder.Append(','); CqlWriter.AppendEscapedTypeName(builder, m_associationSet.ElementType); builder.Append(','); CqlWriter.AppendEscapedName(builder, m_fromRoleName); builder.Append(','); CqlWriter.AppendEscapedName(builder, m_toRoleName); builder.Append(')'); builder.Append(' '); return builder; } // Repeat of AsCql but don't have all the info internal override void ToCompactString(StringBuilder builder) { throw new NotImplementedException(); } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BridgeDataRecord.cs
- DefaultTypeArgumentAttribute.cs
- IPipelineRuntime.cs
- TextEditorDragDrop.cs
- OrderPreservingSpoolingTask.cs
- EncoderParameters.cs
- ContextQuery.cs
- AnnotationResourceCollection.cs
- EndpointIdentity.cs
- DelegatingConfigHost.cs
- UnknownBitmapDecoder.cs
- HttpCapabilitiesBase.cs
- ToolStripProgressBar.cs
- DataGridViewCheckBoxColumn.cs
- XmlUrlResolver.cs
- MetadataUtilsSmi.cs
- TextElementCollectionHelper.cs
- CreateParams.cs
- TextParagraphCache.cs
- LoopExpression.cs
- ByteStreamMessageUtility.cs
- StructuredProperty.cs
- XmlSchemaType.cs
- AssemblyAttributesGoHere.cs
- PropertyValueChangedEvent.cs
- StringBuilder.cs
- HtmlInputFile.cs
- XmlSchemaResource.cs
- DataGridLinkButton.cs
- RoutingExtensionElement.cs
- AvTrace.cs
- LinkButton.cs
- MulticastOption.cs
- DataPointer.cs
- XmlAnyAttributeAttribute.cs
- MetabaseSettingsIis7.cs
- RadioButtonAutomationPeer.cs
- OleDbParameter.cs
- Single.cs
- InvalidAsynchronousStateException.cs
- Brush.cs
- IsolatedStorageFile.cs
- LedgerEntryCollection.cs
- SqlServer2KCompatibilityAnnotation.cs
- TextFormatterImp.cs
- GridViewSelectEventArgs.cs
- ComponentManagerBroker.cs
- UserPersonalizationStateInfo.cs
- SqlParameterizer.cs
- PagedControl.cs
- ProxyManager.cs
- Size3D.cs
- RequestCachingSection.cs
- ZoneIdentityPermission.cs
- IISUnsafeMethods.cs
- XsdValidatingReader.cs
- StoreContentChangedEventArgs.cs
- SizeAnimation.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- AuthenticationModeHelper.cs
- ImageListImageEditor.cs
- HtmlImage.cs
- MethodBuilderInstantiation.cs
- Variable.cs
- ListView.cs
- DifferencingCollection.cs
- Listener.cs
- PopOutPanel.cs
- TextEditorSelection.cs
- VisualBrush.cs
- WeakHashtable.cs
- ObjectDataSourceFilteringEventArgs.cs
- Debug.cs
- ErrorLog.cs
- ToolStripPanelSelectionBehavior.cs
- CustomCredentialPolicy.cs
- FrugalList.cs
- ParseElementCollection.cs
- ObjectCache.cs
- HandlerBase.cs
- SessionStateContainer.cs
- XPathDocumentIterator.cs
- ProtocolsSection.cs
- HttpModule.cs
- DataSourceControl.cs
- FontSourceCollection.cs
- PropertyEmitterBase.cs
- SplitterCancelEvent.cs
- InstanceKeyCompleteException.cs
- embossbitmapeffect.cs
- WebEventCodes.cs
- XmlSchemaAnyAttribute.cs
- DataContractSet.cs
- TraceContextEventArgs.cs
- CopyAttributesAction.cs
- BrowserDefinition.cs
- MulticastOption.cs
- XamlReader.cs
- AxHost.cs
- CompilationSection.cs