Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataEntity / System / Data / Mapping / StorageAssociationTypeMapping.cs / 1 / StorageAssociationTypeMapping.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using System.Data.Metadata.Edm;
namespace System.Data.Mapping {
///
/// Represents the Mapping metadata for an association type map in CS space.
///
///
/// For Example if conceptually you could represent the CS MSL file as following
/// --Mapping
/// --EntityContainerMapping ( CNorthwind-->SNorthwind )
/// --EntitySetMapping
/// --EntityTypeMapping
/// --TableMappingFragment
/// --EntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --EntityTypeMapping
/// --TableMappingFragment
/// --EntityKey
/// --ScalarPropertyMap
/// --ComplexPropertyMap
/// --ComplexTypeMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --ScalarPropertyMap
/// --AssociationSetMapping
/// --AssociationTypeMapping
/// --TableMappingFragment
/// --EndPropertyMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --EndPropertyMap
/// --ScalarPropertyMap
/// --EntityContainerMapping ( CMyDatabase-->SMyDatabase )
/// --CompositionSetMapping
/// --CompositionTypeMapping
/// --TableMappingFragment
/// --ParentEntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --EntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --ComplexPropertyMap
/// --ComplexTypeMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --ScalarPropertyMap
/// This class represents the metadata for all association Type map elements in the
/// above example. Users can access the table mapping fragments under the
/// association type mapping through this class.
///
internal class StorageAssociationTypeMapping : StorageTypeMapping {
#region Constructors
///
/// Construct the new AssociationTypeMapping object.
///
/// Represents the Association Type metadata object
/// Set Mapping that contains this Type mapping
internal StorageAssociationTypeMapping(AssociationType relation, StorageSetMapping setMapping)
: base(setMapping) {
this.m_relation = relation;
}
#endregion
#region Fields
AssociationType m_relation; //Type for which the mapping is represented
#endregion
#region Properties
///
/// The AssociationTypeType Metadata object for which the mapping is represented.
///
internal AssociationType AssociationType
{
get {
return this.m_relation;
}
}
///
/// a list of TypeMetadata that this mapping holds true for.
/// Since Association types dont participate in Inheritance, This can only
/// be one type.
///
internal override ReadOnlyCollection Types {
get {
return new ReadOnlyCollection(new AssociationType[] { m_relation });
}
}
///
/// a list of TypeMetadatas for which the mapping holds true for
/// not only the type specified but the sub-types of that type as well.
/// Since Association types dont participate in Inheritance, an Empty list
/// is returned here.
///
internal override ReadOnlyCollection IsOfTypes {
get {
return new List().AsReadOnly();
}
}
#endregion
#region Methods
///
/// 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("AssociationTypeMapping");
sb.Append(" ");
sb.Append("Type Name:");
sb.Append(this.m_relation.Name);
sb.Append(" ");
Console.WriteLine(sb.ToString());
foreach (StorageMappingFragment fragment in MappingFragments) {
fragment.Print(index + 5);
}
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Text;
using System.Data.Metadata.Edm;
namespace System.Data.Mapping {
///
/// Represents the Mapping metadata for an association type map in CS space.
///
///
/// For Example if conceptually you could represent the CS MSL file as following
/// --Mapping
/// --EntityContainerMapping ( CNorthwind-->SNorthwind )
/// --EntitySetMapping
/// --EntityTypeMapping
/// --TableMappingFragment
/// --EntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --EntityTypeMapping
/// --TableMappingFragment
/// --EntityKey
/// --ScalarPropertyMap
/// --ComplexPropertyMap
/// --ComplexTypeMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --ScalarPropertyMap
/// --AssociationSetMapping
/// --AssociationTypeMapping
/// --TableMappingFragment
/// --EndPropertyMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --EndPropertyMap
/// --ScalarPropertyMap
/// --EntityContainerMapping ( CMyDatabase-->SMyDatabase )
/// --CompositionSetMapping
/// --CompositionTypeMapping
/// --TableMappingFragment
/// --ParentEntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --EntityKey
/// --ScalarPropertyMap
/// --ScalarPropertyMap
/// --ComplexPropertyMap
/// --ComplexTypeMap
/// --ScalarPropertyMap
/// --ScalarProperyMap
/// --ScalarPropertyMap
/// This class represents the metadata for all association Type map elements in the
/// above example. Users can access the table mapping fragments under the
/// association type mapping through this class.
///
internal class StorageAssociationTypeMapping : StorageTypeMapping {
#region Constructors
///
/// Construct the new AssociationTypeMapping object.
///
/// Represents the Association Type metadata object
/// Set Mapping that contains this Type mapping
internal StorageAssociationTypeMapping(AssociationType relation, StorageSetMapping setMapping)
: base(setMapping) {
this.m_relation = relation;
}
#endregion
#region Fields
AssociationType m_relation; //Type for which the mapping is represented
#endregion
#region Properties
///
/// The AssociationTypeType Metadata object for which the mapping is represented.
///
internal AssociationType AssociationType
{
get {
return this.m_relation;
}
}
///
/// a list of TypeMetadata that this mapping holds true for.
/// Since Association types dont participate in Inheritance, This can only
/// be one type.
///
internal override ReadOnlyCollection Types {
get {
return new ReadOnlyCollection(new AssociationType[] { m_relation });
}
}
///
/// a list of TypeMetadatas for which the mapping holds true for
/// not only the type specified but the sub-types of that type as well.
/// Since Association types dont participate in Inheritance, an Empty list
/// is returned here.
///
internal override ReadOnlyCollection IsOfTypes {
get {
return new List().AsReadOnly();
}
}
#endregion
#region Methods
///
/// 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("AssociationTypeMapping");
sb.Append(" ");
sb.Append("Type Name:");
sb.Append(this.m_relation.Name);
sb.Append(" ");
Console.WriteLine(sb.ToString());
foreach (StorageMappingFragment fragment in MappingFragments) {
fragment.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
- AdornerHitTestResult.cs
- LogRecordSequence.cs
- NonPrimarySelectionGlyph.cs
- DesignerDataConnection.cs
- DbDataReader.cs
- RegexNode.cs
- Effect.cs
- ValidationUtility.cs
- FacetDescription.cs
- BitmapSource.cs
- PersonalizationProvider.cs
- PropertyItem.cs
- SqlParameterCollection.cs
- DataSourceControl.cs
- SymmetricKey.cs
- InstanceCreationEditor.cs
- ToolStripDesignerAvailabilityAttribute.cs
- MenuScrollingVisibilityConverter.cs
- SendContent.cs
- listitem.cs
- FormViewCommandEventArgs.cs
- CellParagraph.cs
- DesignerDataRelationship.cs
- Convert.cs
- Clock.cs
- OleDbParameterCollection.cs
- DataObjectAttribute.cs
- PerspectiveCamera.cs
- OleAutBinder.cs
- HtmlControl.cs
- XsdDuration.cs
- HttpRuntimeSection.cs
- DataTableReader.cs
- IndexedString.cs
- WinFormsSpinner.cs
- Zone.cs
- DesignTimeValidationFeature.cs
- ValueTypeFixupInfo.cs
- FrameworkPropertyMetadata.cs
- WindowsAuthenticationModule.cs
- ToolStripItemDesigner.cs
- PublisherIdentityPermission.cs
- DataGridViewImageColumn.cs
- TextTreeObjectNode.cs
- RuntimeConfigLKG.cs
- GZipStream.cs
- ActivityExecutionContextCollection.cs
- DesignTimeType.cs
- RadioButton.cs
- UserPreference.cs
- ConnectionsZone.cs
- SqlWebEventProvider.cs
- Identifier.cs
- CheckBoxAutomationPeer.cs
- Base64Encoding.cs
- FixedPage.cs
- RuleAttributes.cs
- listitem.cs
- WhitespaceRule.cs
- EntryPointNotFoundException.cs
- CuspData.cs
- DataGridItem.cs
- Graph.cs
- GradientStop.cs
- EdmPropertyAttribute.cs
- TileBrush.cs
- FileDialog.cs
- NamespaceInfo.cs
- FolderBrowserDialog.cs
- DataGridDetailsPresenter.cs
- InstanceLockQueryResult.cs
- DataSet.cs
- GridViewRowCollection.cs
- ExtendedProperty.cs
- GeneralTransform3DGroup.cs
- MaterialCollection.cs
- StorageComplexPropertyMapping.cs
- RowsCopiedEventArgs.cs
- List.cs
- TableColumnCollection.cs
- BufferedOutputStream.cs
- FontWeightConverter.cs
- LifetimeServices.cs
- WorkflowValidationFailedException.cs
- GeneralTransformCollection.cs
- MobileControlBuilder.cs
- SystemUnicastIPAddressInformation.cs
- Vector3dCollection.cs
- StylesEditorDialog.cs
- Brushes.cs
- RepeaterItem.cs
- SignatureResourcePool.cs
- EventItfInfo.cs
- ConstructorNeedsTagAttribute.cs
- PrinterResolution.cs
- PerformanceCounterPermission.cs
- UIElementParagraph.cs
- WMIInterop.cs
- DmlSqlGenerator.cs
- ApplicationServicesHostFactory.cs