Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Mapping / StorageEndPropertyMapping.cs / 1305376 / StorageEndPropertyMapping.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Text; using System.Data.Metadata.Edm; namespace System.Data.Mapping { ////// Mapping metadata for End property of an association. /// ////// For Example if conceptually you could represent the CS MSL file as following /// --Mapping /// --EntityContainerMapping ( CNorthwind-->SNorthwind ) /// --EntitySetMapping /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityTypeMapping /// --TableMappingFragment /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ComplexPropertyMap /// --ComplexTypeMapping /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) /// --ComplexTypeMapping /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --DiscriminatorProperyMap ( constant value-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --AssociationSetMapping /// --AssociationTypeMapping /// --TableMappingFragment /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --EndPropertyMap /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityContainerMapping ( CMyDatabase-->SMyDatabase ) /// --CompositionSetMapping /// --CompositionTypeMapping /// --TableMappingFragment /// --ParentEntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --EntityKey /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->Constant value ) /// --ComplexPropertyMap /// --ComplexTypeMapping /// --ScalarPropertyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarProperyMap ( CMemberMetadata-->SMemberMetadata ) /// --ScalarPropertyMap ( CMemberMetadata-->Constant value ) /// This class represents the metadata for all the end property map elements in the /// above example. EndPropertyMaps provide mapping for each end of the association. /// internal class StorageEndPropertyMapping : StoragePropertyMapping { #region Constructors ////// Construct a new End Property mapping object /// /// internal StorageEndPropertyMapping(EdmProperty member) : base(member) { } #endregion #region Fields Listm_properties = new List (); //list of property mappings that make up the End RelationshipEndMember m_endMember = null; #endregion #region Properties /// /// return ReadOnlyCollection of property mappings that are children of this End mapping /// internal ReadOnlyCollectionProperties { get { return this.m_properties.AsReadOnly(); } } /// /// The relation end property Metadata object for which the mapping is represented. /// internal RelationshipEndMember EndMember { get { return this.m_endMember; } set { this.m_endMember = value; } } ////// Returns all store properties that are mapped under this mapping fragment /// internal IEnumerableStoreProperties { get { return m_properties.OfType ().Select((propertyMap => propertyMap.ColumnProperty)).Cast (); } } #endregion #region Methods /// /// Add a property mapping as a child of End property mapping /// /// internal void AddProperty(StoragePropertyMapping prop) { this.m_properties.Add(prop); } ////// This method is primarily for debugging purposes. /// Will be removed shortly. /// /// internal override void Print(int index) { StorageEntityContainerMapping.GetPrettyPrintString(ref index); StringBuilder sb = new StringBuilder(); sb.Append("EndPropertyMapping"); sb.Append(" "); if (this.EndMember != null) { sb.Append("Name:"); sb.Append(this.EndMember.Name); sb.Append(" "); sb.Append("TypeName:"); sb.Append(this.EndMember.TypeUsage.EdmType.FullName); } sb.Append(" "); Console.WriteLine(sb.ToString()); foreach (StoragePropertyMapping propertyMapping in Properties) { propertyMapping.Print(index + 5); } } #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
- PropertyMapper.cs
- ResourcesGenerator.cs
- ReferenceAssemblyAttribute.cs
- ObjectDataSourceStatusEventArgs.cs
- ObjectListCommand.cs
- invalidudtexception.cs
- VariableQuery.cs
- ErrorWebPart.cs
- XsltQilFactory.cs
- StylusButtonCollection.cs
- ScaleTransform.cs
- PageThemeBuildProvider.cs
- DtdParser.cs
- NonSerializedAttribute.cs
- MachineKeyConverter.cs
- InfoCardProofToken.cs
- SharedStream.cs
- ByteStream.cs
- FlowDocumentFormatter.cs
- CompilerGeneratedAttribute.cs
- LocalizableResourceBuilder.cs
- PermissionSetTriple.cs
- EditorZone.cs
- Thread.cs
- GeneralTransform3DTo2DTo3D.cs
- PreProcessor.cs
- _HeaderInfo.cs
- ScriptResourceDefinition.cs
- TypeSystemHelpers.cs
- BindingCompleteEventArgs.cs
- CommittableTransaction.cs
- IgnoreDeviceFilterElementCollection.cs
- TextCompositionEventArgs.cs
- TypedAsyncResult.cs
- PropertySourceInfo.cs
- cryptoapiTransform.cs
- ModuleElement.cs
- Table.cs
- DynamicRenderer.cs
- LayoutDump.cs
- Directory.cs
- PersistenceTypeAttribute.cs
- XmlWrappingReader.cs
- PropertyTab.cs
- LayoutTable.cs
- RowSpanVector.cs
- SystemFonts.cs
- CacheEntry.cs
- FindCriteria.cs
- CustomLineCap.cs
- ConfigXmlSignificantWhitespace.cs
- RightsManagementEncryptionTransform.cs
- ImageCreator.cs
- AdRotator.cs
- ActivityBuilderHelper.cs
- Int32.cs
- DateTimeConverter.cs
- LoadWorkflowByInstanceKeyCommand.cs
- ControlAdapter.cs
- AuditLogLocation.cs
- MachineKeySection.cs
- CheckBox.cs
- Expression.cs
- PersianCalendar.cs
- ApplicationCommands.cs
- DynamicPropertyHolder.cs
- AssociationType.cs
- CodeNamespace.cs
- NameTable.cs
- BamlWriter.cs
- UrlPropertyAttribute.cs
- Pens.cs
- PeerIPHelper.cs
- PenCursorManager.cs
- CanonicalizationDriver.cs
- NonPrimarySelectionGlyph.cs
- RichTextBoxConstants.cs
- SystemColors.cs
- KeyMatchBuilder.cs
- IIS7UserPrincipal.cs
- CachedFontFamily.cs
- KeyInstance.cs
- AuthenticationModuleElementCollection.cs
- XmlSchemaAll.cs
- StandardBindingImporter.cs
- MeasureData.cs
- OrderedDictionary.cs
- WebHostedComPlusServiceHost.cs
- AssemblyInfo.cs
- FontInfo.cs
- HttpRuntime.cs
- newitemfactory.cs
- PeerToPeerException.cs
- UnauthorizedWebPart.cs
- ItemAutomationPeer.cs
- UnionCodeGroup.cs
- ObjectItemCachedAssemblyLoader.cs
- DataRowView.cs
- ExpressionNode.cs
- ItemPager.cs