Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Map / ViewGeneration / Structures / WithStatement.cs / 1305376 / 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
- PageHandlerFactory.cs
- SqlExpander.cs
- CodeMethodMap.cs
- TextTreeTextElementNode.cs
- Configuration.cs
- Group.cs
- Region.cs
- Serializer.cs
- ExpressionPrinter.cs
- DecoderFallbackWithFailureFlag.cs
- CustomAttributeBuilder.cs
- InputEventArgs.cs
- BufferBuilder.cs
- BrowsableAttribute.cs
- CodeGroup.cs
- WebPartConnectionsCancelEventArgs.cs
- Pair.cs
- EntityTransaction.cs
- HttpValueCollection.cs
- DesignerCategoryAttribute.cs
- TextEditorParagraphs.cs
- LogEntrySerializationException.cs
- CustomCategoryAttribute.cs
- Vector3DValueSerializer.cs
- NavigationFailedEventArgs.cs
- FrameworkPropertyMetadata.cs
- Size.cs
- Viewport3DAutomationPeer.cs
- MetadataHelper.cs
- DataGridCellsPanel.cs
- ProtocolsConfiguration.cs
- GradientSpreadMethodValidation.cs
- MetadataPropertyCollection.cs
- SiteMapDataSource.cs
- NamedPipeConnectionPoolSettings.cs
- ImageConverter.cs
- WindowsListViewGroup.cs
- WebHeaderCollection.cs
- MetadataArtifactLoaderComposite.cs
- TdsEnums.cs
- SplitterCancelEvent.cs
- VideoDrawing.cs
- InputScopeNameConverter.cs
- EncoderBestFitFallback.cs
- PagesChangedEventArgs.cs
- AutoGeneratedFieldProperties.cs
- ListSourceHelper.cs
- DSASignatureDeformatter.cs
- FixedTextBuilder.cs
- OpacityConverter.cs
- Win32Native.cs
- TransformGroup.cs
- CanonicalizationDriver.cs
- CorrelationTokenInvalidatedHandler.cs
- Menu.cs
- SqlTriggerAttribute.cs
- ParameterToken.cs
- PrimitiveCodeDomSerializer.cs
- EncodingNLS.cs
- MultipleViewPattern.cs
- TreeNodeCollection.cs
- MethodToken.cs
- SqlMethodAttribute.cs
- ECDiffieHellmanCng.cs
- TripleDES.cs
- CoTaskMemHandle.cs
- DbProviderFactoriesConfigurationHandler.cs
- CounterSampleCalculator.cs
- MissingSatelliteAssemblyException.cs
- RuntimeEnvironment.cs
- Style.cs
- AppDomainFactory.cs
- ScrollBarRenderer.cs
- PageAsyncTask.cs
- HostSecurityManager.cs
- UniqueTransportManagerRegistration.cs
- XmlSchemaGroup.cs
- _StreamFramer.cs
- sqlser.cs
- MemoryStream.cs
- WebServiceReceiveDesigner.cs
- CheckPair.cs
- GridViewRowEventArgs.cs
- Table.cs
- TimeSpanMinutesConverter.cs
- NativeWrapper.cs
- PeerNameRecord.cs
- HtmlGenericControl.cs
- RowType.cs
- PersianCalendar.cs
- AssertFilter.cs
- CorrelationValidator.cs
- ExplicitDiscriminatorMap.cs
- Int32RectValueSerializer.cs
- FormViewDeletedEventArgs.cs
- ResXFileRef.cs
- WorkflowInstanceExtensionCollection.cs
- TagPrefixAttribute.cs
- DataGridViewCellValueEventArgs.cs
- WindowsScrollBar.cs