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
- LinkArea.cs
- RoutedCommand.cs
- ResourceLoader.cs
- EtwTrace.cs
- HeaderedContentControl.cs
- BaseResourcesBuildProvider.cs
- SoapExtensionTypeElement.cs
- UserNamePasswordValidator.cs
- ByteStack.cs
- Events.cs
- ListenUriMode.cs
- EndOfStreamException.cs
- PackageFilter.cs
- DefaultAutoFieldGenerator.cs
- EntityConnectionStringBuilder.cs
- Rotation3DAnimationUsingKeyFrames.cs
- VisualStateChangedEventArgs.cs
- LineServicesCallbacks.cs
- UnsafeNetInfoNativeMethods.cs
- NavigationWindowAutomationPeer.cs
- SplitterEvent.cs
- EventDriven.cs
- Transform.cs
- HttpCacheParams.cs
- WinFormsComponentEditor.cs
- StyleConverter.cs
- BaseAppDomainProtocolHandler.cs
- RoleServiceManager.cs
- StateMachineWorkflowInstance.cs
- CategoryGridEntry.cs
- TemplateControlCodeDomTreeGenerator.cs
- TaiwanCalendar.cs
- DocumentCollection.cs
- ReverseInheritProperty.cs
- PrintDialog.cs
- Site.cs
- SystemMulticastIPAddressInformation.cs
- WebZone.cs
- DataServiceRequestException.cs
- ContourSegment.cs
- CacheHelper.cs
- TextEmbeddedObject.cs
- ClientSession.cs
- CodeTypeReferenceExpression.cs
- DirectoryObjectSecurity.cs
- OutKeywords.cs
- BitStack.cs
- TraceHandler.cs
- TdsParserSessionPool.cs
- DesignerObjectListAdapter.cs
- ResourceReferenceKeyNotFoundException.cs
- TraceAsyncResult.cs
- QueryCacheKey.cs
- PenLineJoinValidation.cs
- httpapplicationstate.cs
- ListViewItem.cs
- TypeElement.cs
- TextRenderer.cs
- ApplicationException.cs
- PartitionerQueryOperator.cs
- oledbmetadatacollectionnames.cs
- ToolStripOverflow.cs
- HtmlInputText.cs
- SqlTypesSchemaImporter.cs
- OutputCacheSettings.cs
- ECDsa.cs
- CallTemplateAction.cs
- OutputCacheSettings.cs
- ColumnHeaderConverter.cs
- MsmqIntegrationMessagePool.cs
- ContentControl.cs
- IOThreadTimer.cs
- BulletDecorator.cs
- COM2FontConverter.cs
- FontStyles.cs
- ExceptionNotification.cs
- OperationResponse.cs
- CollectionChangedEventManager.cs
- OneOfScalarConst.cs
- DataFormats.cs
- ResXResourceSet.cs
- MaskDescriptor.cs
- TransformerConfigurationWizardBase.cs
- AssemblyAttributesGoHere.cs
- HttpWrapper.cs
- TableLayoutPanelDesigner.cs
- LocatorPartList.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- MarkupExtensionSerializer.cs
- DiscoveryClientChannelBase.cs
- GetWinFXPath.cs
- sqlmetadatafactory.cs
- XmlILConstructAnalyzer.cs
- PolicyVersionConverter.cs
- BufferedStream.cs
- StringHandle.cs
- ListBoxItemWrapperAutomationPeer.cs
- ComponentConverter.cs
- ColorAnimationBase.cs
- InputScopeAttribute.cs