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
- MessageTraceRecord.cs
- FontNamesConverter.cs
- XsltSettings.cs
- SoapFormatExtensions.cs
- StreamingContext.cs
- IsolatedStoragePermission.cs
- BlurEffect.cs
- MarshalByRefObject.cs
- MetadataHelper.cs
- DataGridItemAttachedStorage.cs
- DocumentPageTextView.cs
- BitmapMetadataBlob.cs
- OTFRasterizer.cs
- TypeConverterHelper.cs
- WindowsScrollBarBits.cs
- FaultCallbackWrapper.cs
- DesignerActionKeyboardBehavior.cs
- UserPersonalizationStateInfo.cs
- Operand.cs
- DocumentAutomationPeer.cs
- RtType.cs
- RunClient.cs
- PageCatalogPart.cs
- TableRow.cs
- BitSet.cs
- ItemsPresenter.cs
- RootBuilder.cs
- SqlMethods.cs
- SwitchElementsCollection.cs
- HttpWriter.cs
- Configuration.cs
- TouchFrameEventArgs.cs
- TextSelectionHelper.cs
- NativeMethodsOther.cs
- GeometryDrawing.cs
- ThicknessAnimationBase.cs
- ReachSerializerAsync.cs
- SdlChannelSink.cs
- WebContext.cs
- X509CertificateTrustedIssuerElementCollection.cs
- HwndSourceParameters.cs
- Currency.cs
- EpmContentSerializerBase.cs
- DetailsViewPageEventArgs.cs
- CalendarDesigner.cs
- AsyncStreamReader.cs
- SourceFilter.cs
- DataGridColumnHeaderCollection.cs
- MetadataArtifactLoaderComposite.cs
- SafeNativeMethods.cs
- CatalogZoneBase.cs
- OutputScope.cs
- ReadWriteObjectLock.cs
- WorkflowCreationContext.cs
- FrameworkContentElement.cs
- Label.cs
- StreamGeometry.cs
- Debugger.cs
- UnionCodeGroup.cs
- ObjectHandle.cs
- OperationAbortedException.cs
- DeclarativeCatalogPart.cs
- HitTestResult.cs
- NameSpaceExtractor.cs
- WindowsListViewItemCheckBox.cs
- TextElementCollectionHelper.cs
- _HTTPDateParse.cs
- NameValuePermission.cs
- ParseElement.cs
- OperatingSystem.cs
- OLEDB_Util.cs
- SpecularMaterial.cs
- ApplicationException.cs
- OracleParameterCollection.cs
- SmtpClient.cs
- ModifiableIteratorCollection.cs
- TabletDevice.cs
- MobileResource.cs
- Attributes.cs
- CrossSiteScriptingValidation.cs
- Point3DKeyFrameCollection.cs
- RemotingHelper.cs
- TabControlDesigner.cs
- InputBuffer.cs
- Condition.cs
- PriorityQueue.cs
- MessageQueueConverter.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- ProfileSection.cs
- BlobPersonalizationState.cs
- RangeValidator.cs
- HashRepartitionStream.cs
- XamlGridLengthSerializer.cs
- SecurityTokenResolver.cs
- SignatureDescription.cs
- updatecommandorderer.cs
- PathData.cs
- DependencyPropertyKey.cs
- Pointer.cs
- StickyNoteAnnotations.cs