Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Server / System / Data / Services / Providers / ResourceAssociationSetEnd.cs / 1305376 / ResourceAssociationSetEnd.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Describes an end point of a resource association set.
//
//
// @owner [....]
//---------------------------------------------------------------------
namespace System.Data.Services.Providers
{
using System.Diagnostics;
///
/// Class to describe an end point of a resource association set.
///
[DebuggerDisplay("ResourceAssociationSetEnd: {Name}: ({ResourceSet.Name}, {ResourceType.Name}, {ResourceProperty.Name})")]
public sealed class ResourceAssociationSetEnd
{
#region Private Fields
///
/// Resource set for the association end.
///
private readonly ResourceSet resourceSet;
///
/// Resource type for the association end.
///
private readonly ResourceType resourceType;
///
/// Resource property for the association end.
///
private readonly ResourceProperty resourceProperty;
#endregion Private Fields
#region Constructor
///
/// Constructs a ResourceAssociationEnd instance.
///
/// Resource set of the association end.
/// Resource type of the association end.
/// Resource property of the association end.
public ResourceAssociationSetEnd(ResourceSet resourceSet, ResourceType resourceType, ResourceProperty resourceProperty)
{
WebUtil.CheckArgumentNull(resourceSet, "resourceSet");
WebUtil.CheckArgumentNull(resourceType, "resourceType");
if (resourceProperty != null && (resourceType.TryResolvePropertyName(resourceProperty.Name) == null || resourceProperty.TypeKind != ResourceTypeKind.EntityType))
{
throw new ArgumentException(Strings.ResourceAssociationSetEnd_ResourcePropertyMustBeNavigationPropertyOnResourceType);
}
if (!resourceSet.ResourceType.IsAssignableFrom(resourceType) && !resourceType.IsAssignableFrom(resourceSet.ResourceType))
{
throw new ArgumentException(Strings.ResourceAssociationSetEnd_ResourceTypeMustBeAssignableToResourceSet);
}
this.resourceSet = resourceSet;
this.resourceType = resourceType;
// Note that for the TargetEnd, resourceProperty can be null.
this.resourceProperty = resourceProperty;
}
#endregion Constructor
#region Properties
///
/// Resource set for the association end.
///
public ResourceSet ResourceSet
{
[DebuggerStepThrough]
get { return this.resourceSet; }
}
///
/// Resource type for the association end.
///
public ResourceType ResourceType
{
[DebuggerStepThrough]
get { return this.resourceType; }
}
///
/// Resource property for the association end.
///
public ResourceProperty ResourceProperty
{
[DebuggerStepThrough]
get { return this.resourceProperty; }
}
#endregion Properties
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// Describes an end point of a resource association set.
//
//
// @owner [....]
//---------------------------------------------------------------------
namespace System.Data.Services.Providers
{
using System.Diagnostics;
///
/// Class to describe an end point of a resource association set.
///
[DebuggerDisplay("ResourceAssociationSetEnd: {Name}: ({ResourceSet.Name}, {ResourceType.Name}, {ResourceProperty.Name})")]
public sealed class ResourceAssociationSetEnd
{
#region Private Fields
///
/// Resource set for the association end.
///
private readonly ResourceSet resourceSet;
///
/// Resource type for the association end.
///
private readonly ResourceType resourceType;
///
/// Resource property for the association end.
///
private readonly ResourceProperty resourceProperty;
#endregion Private Fields
#region Constructor
///
/// Constructs a ResourceAssociationEnd instance.
///
/// Resource set of the association end.
/// Resource type of the association end.
/// Resource property of the association end.
public ResourceAssociationSetEnd(ResourceSet resourceSet, ResourceType resourceType, ResourceProperty resourceProperty)
{
WebUtil.CheckArgumentNull(resourceSet, "resourceSet");
WebUtil.CheckArgumentNull(resourceType, "resourceType");
if (resourceProperty != null && (resourceType.TryResolvePropertyName(resourceProperty.Name) == null || resourceProperty.TypeKind != ResourceTypeKind.EntityType))
{
throw new ArgumentException(Strings.ResourceAssociationSetEnd_ResourcePropertyMustBeNavigationPropertyOnResourceType);
}
if (!resourceSet.ResourceType.IsAssignableFrom(resourceType) && !resourceType.IsAssignableFrom(resourceSet.ResourceType))
{
throw new ArgumentException(Strings.ResourceAssociationSetEnd_ResourceTypeMustBeAssignableToResourceSet);
}
this.resourceSet = resourceSet;
this.resourceType = resourceType;
// Note that for the TargetEnd, resourceProperty can be null.
this.resourceProperty = resourceProperty;
}
#endregion Constructor
#region Properties
///
/// Resource set for the association end.
///
public ResourceSet ResourceSet
{
[DebuggerStepThrough]
get { return this.resourceSet; }
}
///
/// Resource type for the association end.
///
public ResourceType ResourceType
{
[DebuggerStepThrough]
get { return this.resourceType; }
}
///
/// Resource property for the association end.
///
public ResourceProperty ResourceProperty
{
[DebuggerStepThrough]
get { return this.resourceProperty; }
}
#endregion Properties
}
}
// 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
- AuthenticatingEventArgs.cs
- ElementProxy.cs
- CodeTryCatchFinallyStatement.cs
- XmlElementList.cs
- WebFaultException.cs
- WebDescriptionAttribute.cs
- RolePrincipal.cs
- SortExpressionBuilder.cs
- CryptoApi.cs
- SubMenuStyleCollectionEditor.cs
- FontInfo.cs
- ResponseStream.cs
- DbConnectionOptions.cs
- DesignerGeometryHelper.cs
- HttpGetProtocolReflector.cs
- TableAdapterManagerHelper.cs
- AttributeEmitter.cs
- HMACSHA256.cs
- PseudoWebRequest.cs
- CustomErrorCollection.cs
- TaskHelper.cs
- XamlBrushSerializer.cs
- Geometry3D.cs
- EmissiveMaterial.cs
- UndirectedGraph.cs
- CultureSpecificStringDictionary.cs
- ConfigurationSectionGroup.cs
- BitmapEffect.cs
- EmbeddedMailObject.cs
- RecordConverter.cs
- XmlQualifiedName.cs
- Button.cs
- Expression.cs
- MetadataSerializer.cs
- SqlUnionizer.cs
- BmpBitmapDecoder.cs
- SafeWaitHandle.cs
- ContextMenuService.cs
- ResolveDuplexCD1AsyncResult.cs
- OleDbError.cs
- _UriSyntax.cs
- UInt64Storage.cs
- NativeMsmqMessage.cs
- TypeSource.cs
- NTAccount.cs
- BypassElement.cs
- WindowsFormsHostAutomationPeer.cs
- VirtualizingStackPanel.cs
- WaveHeader.cs
- WebPartRestoreVerb.cs
- WindowsToolbarAsMenu.cs
- Function.cs
- DiagnosticsConfiguration.cs
- wgx_commands.cs
- MouseGestureValueSerializer.cs
- DataContractSerializerServiceBehavior.cs
- DefaultBindingPropertyAttribute.cs
- TypeToStringValueConverter.cs
- LinkDescriptor.cs
- RemotingServices.cs
- PersonalizationStateInfoCollection.cs
- GetChildSubtree.cs
- GeneralTransform.cs
- CodeCatchClauseCollection.cs
- QilTernary.cs
- DiscoveryClientDocuments.cs
- LocationInfo.cs
- ListViewItem.cs
- PowerModeChangedEventArgs.cs
- HMACSHA256.cs
- VisualTarget.cs
- XmlAttributeCache.cs
- LinqExpressionNormalizer.cs
- PrimitiveSchema.cs
- MarkupObject.cs
- DataGridColumn.cs
- Quaternion.cs
- WebPartHeaderCloseVerb.cs
- DataGridParentRows.cs
- Enlistment.cs
- ConfigurationSettings.cs
- SoapInteropTypes.cs
- WsatServiceAddress.cs
- altserialization.cs
- WebPageTraceListener.cs
- OAVariantLib.cs
- EncodingDataItem.cs
- TraceFilter.cs
- SqlDataSourceQueryEditor.cs
- AdPostCacheSubstitution.cs
- AttributedMetaModel.cs
- StartUpEventArgs.cs
- DataGridViewAddColumnDialog.cs
- ListParagraph.cs
- PermissionAttributes.cs
- ArrayList.cs
- DropShadowEffect.cs
- EncryptedXml.cs
- KnownTypesHelper.cs
- WebPartAuthorizationEventArgs.cs