Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / Objects / DataClasses / EdmRelationshipRoleAttribute.cs / 2 / EdmRelationshipRoleAttribute.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Data.Metadata.Edm; //for RelationshipMultiplicity
namespace System.Data.Objects.DataClasses
{
///
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
public sealed class EdmRelationshipAttribute : System.Attribute
{
private string _relationshipNamespaceName;
private string _relationshipName;
private string _role1Name;
private string _role2Name;
private RelationshipMultiplicity _role1Multiplicity;
private RelationshipMultiplicity _role2Multiplicity;
private Type _role1Type;
private Type _role2Type;
///
/// Attribute containing the details for a relationship
/// This should match the C-Space relationship information, but having it available in this
/// attribute allows us access to this information even in O-Space when there is no context.
/// There can be multiple attributes of this type in an assembly.
///
public EdmRelationshipAttribute(string relationshipNamespaceName,
string relationshipName,
string role1Name,
RelationshipMultiplicity role1Multiplicity,
Type role1Type,
string role2Name,
RelationshipMultiplicity role2Multiplicity,
Type role2Type)
{
_relationshipNamespaceName = relationshipNamespaceName;
_relationshipName = relationshipName;
_role1Name = role1Name;
_role1Multiplicity = role1Multiplicity;
_role1Type = role1Type;
_role2Name = role2Name;
_role2Multiplicity = role2Multiplicity;
_role2Type = role2Type;
}
///
/// The name of the namespace that the relationship is in
///
public string RelationshipNamespaceName
{
get { return _relationshipNamespaceName; }
}
///
/// The name of a relationship
///
public string RelationshipName
{
get { return _relationshipName; }
}
///
/// The name of the role
///
public string Role1Name
{
get { return _role1Name; }
}
///
/// The multiplicity of the the RoleName in RelationshipName
///
public RelationshipMultiplicity Role1Multiplicity
{
get { return _role1Multiplicity; }
}
///
/// The CLR type for the role associated with this relationship
///
public Type Role1Type
{
get { return _role1Type; }
}
///
/// The name of the role
///
public string Role2Name
{
get { return _role2Name; }
}
///
/// The multiplicity of the the RoleName in RelationshipName
///
public RelationshipMultiplicity Role2Multiplicity
{
get { return _role2Multiplicity; }
}
///
/// The CLR type for the role associated with this relationship
///
public Type Role2Type
{
get { return _role2Type; }
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System.Data.Metadata.Edm; //for RelationshipMultiplicity
namespace System.Data.Objects.DataClasses
{
///
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)]
public sealed class EdmRelationshipAttribute : System.Attribute
{
private string _relationshipNamespaceName;
private string _relationshipName;
private string _role1Name;
private string _role2Name;
private RelationshipMultiplicity _role1Multiplicity;
private RelationshipMultiplicity _role2Multiplicity;
private Type _role1Type;
private Type _role2Type;
///
/// Attribute containing the details for a relationship
/// This should match the C-Space relationship information, but having it available in this
/// attribute allows us access to this information even in O-Space when there is no context.
/// There can be multiple attributes of this type in an assembly.
///
public EdmRelationshipAttribute(string relationshipNamespaceName,
string relationshipName,
string role1Name,
RelationshipMultiplicity role1Multiplicity,
Type role1Type,
string role2Name,
RelationshipMultiplicity role2Multiplicity,
Type role2Type)
{
_relationshipNamespaceName = relationshipNamespaceName;
_relationshipName = relationshipName;
_role1Name = role1Name;
_role1Multiplicity = role1Multiplicity;
_role1Type = role1Type;
_role2Name = role2Name;
_role2Multiplicity = role2Multiplicity;
_role2Type = role2Type;
}
///
/// The name of the namespace that the relationship is in
///
public string RelationshipNamespaceName
{
get { return _relationshipNamespaceName; }
}
///
/// The name of a relationship
///
public string RelationshipName
{
get { return _relationshipName; }
}
///
/// The name of the role
///
public string Role1Name
{
get { return _role1Name; }
}
///
/// The multiplicity of the the RoleName in RelationshipName
///
public RelationshipMultiplicity Role1Multiplicity
{
get { return _role1Multiplicity; }
}
///
/// The CLR type for the role associated with this relationship
///
public Type Role1Type
{
get { return _role1Type; }
}
///
/// The name of the role
///
public string Role2Name
{
get { return _role2Name; }
}
///
/// The multiplicity of the the RoleName in RelationshipName
///
public RelationshipMultiplicity Role2Multiplicity
{
get { return _role2Multiplicity; }
}
///
/// The CLR type for the role associated with this relationship
///
public Type Role2Type
{
get { return _role2Type; }
}
}
}
// 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
- CacheAxisQuery.cs
- WindowsNonControl.cs
- NumberFormatInfo.cs
- ErrorRuntimeConfig.cs
- EventHandlersStore.cs
- Solver.cs
- CollectionChangedEventManager.cs
- ToolStripActionList.cs
- GlobalItem.cs
- XmlComment.cs
- MimeFormatExtensions.cs
- StoryFragments.cs
- RefType.cs
- ReadOnlyCollectionBase.cs
- COM2FontConverter.cs
- DataPagerFieldCommandEventArgs.cs
- BinaryConverter.cs
- UrlMapping.cs
- BindingManagerDataErrorEventArgs.cs
- BrowserCapabilitiesCodeGenerator.cs
- PreloadHost.cs
- ResourceProviderFactory.cs
- BamlRecordReader.cs
- DetailsViewRowCollection.cs
- FragmentNavigationEventArgs.cs
- ObjectList.cs
- MailWebEventProvider.cs
- HitTestDrawingContextWalker.cs
- ApplicationSecurityInfo.cs
- DataKeyArray.cs
- DesignOnlyAttribute.cs
- PenThreadWorker.cs
- HttpListenerRequestTraceRecord.cs
- CollectionChange.cs
- StringUtil.cs
- TypeValidationEventArgs.cs
- Function.cs
- PipelineModuleStepContainer.cs
- XmlNodeComparer.cs
- IncomingWebRequestContext.cs
- ContentFileHelper.cs
- TemplateBindingExtension.cs
- BamlRecordReader.cs
- PointAnimationUsingKeyFrames.cs
- GenericIdentity.cs
- WhitespaceRuleLookup.cs
- NegationPusher.cs
- DiscoveryServerProtocol.cs
- LocalizeDesigner.cs
- ImageIndexConverter.cs
- DesignerRegionMouseEventArgs.cs
- VectorKeyFrameCollection.cs
- BrowsableAttribute.cs
- ProxyHwnd.cs
- SessionState.cs
- SiblingIterators.cs
- DispatcherProcessingDisabled.cs
- TouchesCapturedWithinProperty.cs
- ServiceDescriptionSerializer.cs
- CompiledAction.cs
- EventRouteFactory.cs
- SqlNamer.cs
- LockCookie.cs
- Rect3DConverter.cs
- FunctionImportElement.cs
- ToolStripDropDownClosedEventArgs.cs
- PenThreadWorker.cs
- SubstitutionDesigner.cs
- objectresult_tresulttype.cs
- CLSCompliantAttribute.cs
- MatrixTransform3D.cs
- RegexWorker.cs
- ProjectionCamera.cs
- OutputBuffer.cs
- InputReferenceExpression.cs
- EmptyEnumerator.cs
- ScalarConstant.cs
- NameScopePropertyAttribute.cs
- QueryConverter.cs
- BmpBitmapDecoder.cs
- BulletChrome.cs
- ErrorWebPart.cs
- SpecialNameAttribute.cs
- RectangleConverter.cs
- tooltip.cs
- FileDialogCustomPlacesCollection.cs
- EventRoute.cs
- FontInfo.cs
- CodeExpressionStatement.cs
- SortedDictionary.cs
- BindingFormattingDialog.cs
- ClassicBorderDecorator.cs
- HttpHeaderCollection.cs
- WebPartMinimizeVerb.cs
- UIElementHelper.cs
- HMACRIPEMD160.cs
- Point.cs
- DocumentEventArgs.cs
- MessagePartSpecification.cs
- SerializationEventsCache.cs