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
- DocComment.cs
- LogAppendAsyncResult.cs
- ImpersonationContext.cs
- _BaseOverlappedAsyncResult.cs
- HealthMonitoringSectionHelper.cs
- Model3DCollection.cs
- MetadataFile.cs
- DBCSCodePageEncoding.cs
- HighContrastHelper.cs
- DataRelationCollection.cs
- SessionSymmetricTransportSecurityProtocolFactory.cs
- UnsafeNativeMethods.cs
- HandlerFactoryCache.cs
- FileUtil.cs
- UriGenerator.cs
- Int16KeyFrameCollection.cs
- FunctionImportMapping.cs
- Underline.cs
- TreeView.cs
- CategoryNameCollection.cs
- HtmlLinkAdapter.cs
- CustomTypeDescriptor.cs
- FloatMinMaxAggregationOperator.cs
- BrowserPolicyValidator.cs
- ChangeInterceptorAttribute.cs
- ServiceOperationParameter.cs
- IisTraceWebEventProvider.cs
- PTManager.cs
- AvTrace.cs
- QualifiedCellIdBoolean.cs
- TagPrefixCollection.cs
- SecurityTokenResolver.cs
- HandlerBase.cs
- Constraint.cs
- BufferedReceiveManager.cs
- TraceSection.cs
- KeyTimeConverter.cs
- autovalidator.cs
- XslAst.cs
- _TLSstream.cs
- GridItemPattern.cs
- SelectionGlyphBase.cs
- WebPartConnection.cs
- ITreeGenerator.cs
- HttpCookieCollection.cs
- EdmFunction.cs
- XmlHierarchicalEnumerable.cs
- RelationshipConverter.cs
- DataObject.cs
- DTCTransactionManager.cs
- SqlDataSourceQuery.cs
- RuntimeHandles.cs
- DataReaderContainer.cs
- Polygon.cs
- FormsAuthenticationUserCollection.cs
- CachedFontFace.cs
- SystemParameters.cs
- BaseTemplateCodeDomTreeGenerator.cs
- CachingHintValidation.cs
- ToolStripRenderer.cs
- CheckBox.cs
- WindowsClientElement.cs
- EndPoint.cs
- CodeGeneratorOptions.cs
- DataGridViewColumnCollectionEditor.cs
- MostlySingletonList.cs
- InvalidCastException.cs
- ContentElement.cs
- HttpApplication.cs
- DataControlButton.cs
- GridViewSelectEventArgs.cs
- DecimalKeyFrameCollection.cs
- InstalledFontCollection.cs
- CodeTypeParameterCollection.cs
- Emitter.cs
- CopyCodeAction.cs
- ReflectEventDescriptor.cs
- wgx_exports.cs
- ToolBarOverflowPanel.cs
- SqlXmlStorage.cs
- WindowsFormsSynchronizationContext.cs
- ProfileParameter.cs
- FileDialog_Vista.cs
- ActivityTypeResolver.xaml.cs
- PrintPreviewControl.cs
- DefaultParameterValueAttribute.cs
- ToolboxItemSnapLineBehavior.cs
- BrowsableAttribute.cs
- Int16.cs
- Decimal.cs
- GlobalizationAssembly.cs
- As.cs
- TransactionScopeDesigner.cs
- ReadOnlyMetadataCollection.cs
- FixedSOMPageElement.cs
- TextEndOfSegment.cs
- PathParser.cs
- MailAddressCollection.cs
- RelationshipEndMember.cs
- DeviceContext2.cs