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
- DateTimeFormatInfoScanner.cs
- DesignerDataParameter.cs
- XamlReader.cs
- WindowsEditBox.cs
- XhtmlBasicTextBoxAdapter.cs
- Rijndael.cs
- RegexParser.cs
- LinqDataSourceValidationException.cs
- BuilderInfo.cs
- ScriptingRoleServiceSection.cs
- PasswordRecovery.cs
- QilStrConcat.cs
- EmptyEnumerator.cs
- DataPagerFieldItem.cs
- RotateTransform3D.cs
- KeyProperty.cs
- TransformProviderWrapper.cs
- NullRuntimeConfig.cs
- EntityCommandExecutionException.cs
- MobilePage.cs
- WebPartUserCapability.cs
- ViewStateModeByIdAttribute.cs
- DragDeltaEventArgs.cs
- DataBindingList.cs
- LinqExpressionNormalizer.cs
- DatePicker.cs
- OutputCacheProfile.cs
- EditorZoneBase.cs
- ExceptionDetail.cs
- SystemSounds.cs
- WeakReference.cs
- GacUtil.cs
- SpnEndpointIdentityExtension.cs
- DelegateInArgument.cs
- OutputCacheProfileCollection.cs
- MenuItem.cs
- ManipulationDelta.cs
- SHA512Managed.cs
- StylusTip.cs
- ByteStreamGeometryContext.cs
- PartManifestEntry.cs
- SplineKeyFrames.cs
- BulletedListEventArgs.cs
- TableLayoutStyleCollection.cs
- WeakReadOnlyCollection.cs
- PermissionRequestEvidence.cs
- DataKeyArray.cs
- _TLSstream.cs
- StopStoryboard.cs
- TransformerInfoCollection.cs
- EntityViewGenerator.cs
- Stylus.cs
- DataGridPageChangedEventArgs.cs
- ProjectionPathSegment.cs
- Barrier.cs
- CheckBox.cs
- nulltextnavigator.cs
- PointUtil.cs
- SqlMethods.cs
- ClientBuildManager.cs
- EntityContainerAssociationSet.cs
- OracleColumn.cs
- MatchAttribute.cs
- TcpChannelFactory.cs
- CommandDevice.cs
- ListBase.cs
- StrongName.cs
- MSG.cs
- EnumConverter.cs
- CompatibleComparer.cs
- IndicShape.cs
- ErasingStroke.cs
- CredentialCache.cs
- FormatVersion.cs
- TreeNodeConverter.cs
- Debugger.cs
- RoutedEventHandlerInfo.cs
- TextParagraph.cs
- TextParagraphProperties.cs
- BaseServiceProvider.cs
- ConsumerConnectionPointCollection.cs
- PointValueSerializer.cs
- PieceNameHelper.cs
- WindowInteropHelper.cs
- MethodExecutor.cs
- TraceFilter.cs
- MetadataArtifactLoader.cs
- MailBnfHelper.cs
- ArcSegment.cs
- LocalClientSecuritySettingsElement.cs
- MatrixCamera.cs
- InternalBufferOverflowException.cs
- PackageProperties.cs
- TableParaClient.cs
- ItemDragEvent.cs
- CodeParameterDeclarationExpression.cs
- LinearQuaternionKeyFrame.cs
- DbgCompiler.cs
- PerformanceCounterCategory.cs
- AcceptorSessionSymmetricMessageSecurityProtocol.cs