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
- SizeF.cs
- ComplexType.cs
- MouseEventArgs.cs
- BinaryMethodMessage.cs
- SqlWorkflowInstanceStoreLock.cs
- LogicalExpr.cs
- BooleanKeyFrameCollection.cs
- ExtenderControl.cs
- NameTable.cs
- StateMachine.cs
- indexingfiltermarshaler.cs
- Polyline.cs
- XPathDocumentIterator.cs
- RegexRunnerFactory.cs
- ProviderConnectionPointCollection.cs
- HtmlEncodedRawTextWriter.cs
- SQLBinary.cs
- MasterPage.cs
- Table.cs
- HtmlInputButton.cs
- InvokeWebServiceDesigner.cs
- WebResourceAttribute.cs
- ListControl.cs
- SchemaDeclBase.cs
- DoubleAnimationClockResource.cs
- HtmlInputRadioButton.cs
- Point4D.cs
- TraceData.cs
- PackageRelationshipCollection.cs
- VisualProxy.cs
- QuaternionKeyFrameCollection.cs
- DataGridViewRowCancelEventArgs.cs
- WmpBitmapEncoder.cs
- Hash.cs
- TempFiles.cs
- CheckBoxRenderer.cs
- ParallelActivityDesigner.cs
- InvariantComparer.cs
- TabRenderer.cs
- NavigatingCancelEventArgs.cs
- NamespaceQuery.cs
- FileNotFoundException.cs
- EventRoute.cs
- InvalidDataContractException.cs
- DocumentReferenceCollection.cs
- TextHidden.cs
- TextTreeUndo.cs
- XPathSingletonIterator.cs
- CompilerLocalReference.cs
- MatrixKeyFrameCollection.cs
- FrameAutomationPeer.cs
- RenderingBiasValidation.cs
- ClientBuildManager.cs
- TableRowCollection.cs
- ProfessionalColors.cs
- StreamSecurityUpgradeInitiator.cs
- TextRangeEditLists.cs
- CodeSnippetCompileUnit.cs
- Logging.cs
- IUnknownConstantAttribute.cs
- OleDbException.cs
- CapabilitiesSection.cs
- CatalogPartCollection.cs
- BrowserInteropHelper.cs
- LabelInfo.cs
- WindowsFormsLinkLabel.cs
- DictionaryEntry.cs
- LogEntrySerialization.cs
- ParameterModifier.cs
- HwndSourceKeyboardInputSite.cs
- BamlLocalizabilityResolver.cs
- Point4D.cs
- WSHttpBinding.cs
- ToolboxItemCollection.cs
- GestureRecognizer.cs
- SpotLight.cs
- OptionalColumn.cs
- SemanticTag.cs
- hresults.cs
- XmlAnyElementAttribute.cs
- DataReaderContainer.cs
- WindowsContainer.cs
- StylusPointPropertyUnit.cs
- SettingsSection.cs
- CmsUtils.cs
- WinFormsSecurity.cs
- DefinitionBase.cs
- Rect3D.cs
- EventProvider.cs
- ArgIterator.cs
- SqlDataSourceQuery.cs
- ProjectionQueryOptionExpression.cs
- VirtualizedItemPattern.cs
- PageThemeParser.cs
- X509Certificate2Collection.cs
- GridViewPageEventArgs.cs
- DynamicPropertyHolder.cs
- ObjectItemCachedAssemblyLoader.cs
- CompilationSection.cs
- AttributeCollection.cs