Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / ndp / fx / src / DataEntity / System / Data / Metadata / Edm / EdmMember.cs / 2 / EdmMember.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....], [....]
//---------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Diagnostics;
using System.Text;
namespace System.Data.Metadata.Edm
{
///
/// Represents the edm member class
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
public abstract class EdmMember : MetadataItem
{
///
/// Initializes a new instance of EdmMember class
///
/// name of the member
/// type information containing info about member's type and its facet
internal EdmMember(string name, TypeUsage memberTypeUsage)
{
EntityUtil.CheckStringArgument(name, "name");
EntityUtil.GenericCheckArgumentNull(memberTypeUsage, "memberTypeUsage");
_name = name;
_typeUsage = memberTypeUsage;
}
private TypeUsage _typeUsage;
private string _name;
private StructuralType _declaringType;
///
/// Returns the identity of the member
///
internal override string Identity
{
get
{
return this.Name;
}
}
///
/// Returns the name of the member
///
[MetadataProperty(PrimitiveTypeKind.String, false)]
public String Name
{
get
{
return _name;
}
}
///
/// Returns the declaring type of the member
///
public StructuralType DeclaringType
{
get
{
return _declaringType;
}
}
///
/// Returns the TypeUsage object containing the type information and facets
/// about the type
///
[MetadataProperty(BuiltInTypeKind.TypeUsage, false)]
public TypeUsage TypeUsage
{
get
{
return _typeUsage;
}
}
///
/// Overriding System.Object.ToString to provide better String representation
/// for this type.
///
public override string ToString()
{
return Name;
}
///
/// Sets the member to read only mode. Once this is done, there are no changes
/// that can be done to this class
///
internal override void SetReadOnly()
{
if (!IsReadOnly)
{
base.SetReadOnly();
// TypeUsage is always readonly, no need to set it
}
}
///
/// Change the declaring type without doing fixup in the member collection
///
internal void ChangeDeclaringTypeWithoutCollectionFixup(StructuralType newDeclaringType)
{
_declaringType = newDeclaringType;
}
///
/// Tells whether this member is marked as a Computed member in the EDM definition
///
internal bool IsStoreGeneratedComputed
{
get
{
Facet item=null;
if (TypeUsage.Facets.TryGetValue(EdmProviderManifest.StoreGeneratedPatternFacetName, false, out item))
{
return ((StoreGeneratedPattern)item.Value) == StoreGeneratedPattern.Computed;
}
return false;
}
}
///
/// Tells whether this member's Store generated pattern is marked as Identity in the EDM definition
///
internal bool IsStoreGeneratedIdentity
{
get
{
Facet item = null;
if (TypeUsage.Facets.TryGetValue(EdmProviderManifest.StoreGeneratedPatternFacetName, false, out item))
{
return ((StoreGeneratedPattern)item.Value) == StoreGeneratedPattern.Identity;
}
return false;
}
}
}
}
// 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.Data.Common;
using System.Diagnostics;
using System.Text;
namespace System.Data.Metadata.Edm
{
///
/// Represents the edm member class
///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", MessageId = "Edm")]
public abstract class EdmMember : MetadataItem
{
///
/// Initializes a new instance of EdmMember class
///
/// name of the member
/// type information containing info about member's type and its facet
internal EdmMember(string name, TypeUsage memberTypeUsage)
{
EntityUtil.CheckStringArgument(name, "name");
EntityUtil.GenericCheckArgumentNull(memberTypeUsage, "memberTypeUsage");
_name = name;
_typeUsage = memberTypeUsage;
}
private TypeUsage _typeUsage;
private string _name;
private StructuralType _declaringType;
///
/// Returns the identity of the member
///
internal override string Identity
{
get
{
return this.Name;
}
}
///
/// Returns the name of the member
///
[MetadataProperty(PrimitiveTypeKind.String, false)]
public String Name
{
get
{
return _name;
}
}
///
/// Returns the declaring type of the member
///
public StructuralType DeclaringType
{
get
{
return _declaringType;
}
}
///
/// Returns the TypeUsage object containing the type information and facets
/// about the type
///
[MetadataProperty(BuiltInTypeKind.TypeUsage, false)]
public TypeUsage TypeUsage
{
get
{
return _typeUsage;
}
}
///
/// Overriding System.Object.ToString to provide better String representation
/// for this type.
///
public override string ToString()
{
return Name;
}
///
/// Sets the member to read only mode. Once this is done, there are no changes
/// that can be done to this class
///
internal override void SetReadOnly()
{
if (!IsReadOnly)
{
base.SetReadOnly();
// TypeUsage is always readonly, no need to set it
}
}
///
/// Change the declaring type without doing fixup in the member collection
///
internal void ChangeDeclaringTypeWithoutCollectionFixup(StructuralType newDeclaringType)
{
_declaringType = newDeclaringType;
}
///
/// Tells whether this member is marked as a Computed member in the EDM definition
///
internal bool IsStoreGeneratedComputed
{
get
{
Facet item=null;
if (TypeUsage.Facets.TryGetValue(EdmProviderManifest.StoreGeneratedPatternFacetName, false, out item))
{
return ((StoreGeneratedPattern)item.Value) == StoreGeneratedPattern.Computed;
}
return false;
}
}
///
/// Tells whether this member's Store generated pattern is marked as Identity in the EDM definition
///
internal bool IsStoreGeneratedIdentity
{
get
{
Facet item = null;
if (TypeUsage.Facets.TryGetValue(EdmProviderManifest.StoreGeneratedPatternFacetName, false, out item))
{
return ((StoreGeneratedPattern)item.Value) == StoreGeneratedPattern.Identity;
}
return false;
}
}
}
}
// 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
- NativeWrapper.cs
- DoubleCollection.cs
- InProcStateClientManager.cs
- XamlToRtfWriter.cs
- tibetanshape.cs
- PublisherIdentityPermission.cs
- SqlFactory.cs
- ColumnReorderedEventArgs.cs
- FullTextLine.cs
- OracleBinary.cs
- SeekStoryboard.cs
- CodeDOMUtility.cs
- CollectionDataContractAttribute.cs
- XmlJsonWriter.cs
- SecurityTokenParameters.cs
- ComponentSerializationService.cs
- ValueTypeFixupInfo.cs
- MarkupObject.cs
- SetterBaseCollection.cs
- AbandonedMutexException.cs
- AliasExpr.cs
- Exception.cs
- Pen.cs
- GradientBrush.cs
- Internal.cs
- PowerModeChangedEventArgs.cs
- TextRange.cs
- GridViewColumnCollection.cs
- SizeAnimationBase.cs
- TypeSystem.cs
- CqlErrorHelper.cs
- GACIdentityPermission.cs
- Int32Collection.cs
- ConfigurationElementCollection.cs
- CodeLinePragma.cs
- EventLog.cs
- TitleStyle.cs
- TextSchema.cs
- RulePatternOps.cs
- IPHostEntry.cs
- ZipFileInfoCollection.cs
- ValueUnavailableException.cs
- StateMachineHelpers.cs
- CheckoutException.cs
- SystemResourceKey.cs
- RangeBaseAutomationPeer.cs
- EntityDataSourceView.cs
- ModelItemDictionaryImpl.cs
- AssemblyCache.cs
- _ChunkParse.cs
- HideDisabledControlAdapter.cs
- LineSegment.cs
- MdImport.cs
- OdbcConnectionFactory.cs
- SafeThreadHandle.cs
- ClientTargetSection.cs
- WebPartMenuStyle.cs
- DataGridPagerStyle.cs
- ProcessingInstructionAction.cs
- XmlCharCheckingReader.cs
- SmiEventSink_Default.cs
- Pts.cs
- ContextStack.cs
- LineProperties.cs
- DecimalStorage.cs
- FilterQueryOptionExpression.cs
- TimeSpanMinutesOrInfiniteConverter.cs
- Simplifier.cs
- AbstractSvcMapFileLoader.cs
- WebBrowser.cs
- DataGridViewAutoSizeColumnsModeEventArgs.cs
- UInt64Converter.cs
- TextDecoration.cs
- EditorPartChrome.cs
- SchemaEntity.cs
- StringValidatorAttribute.cs
- JsonSerializer.cs
- FontNamesConverter.cs
- DesignerActionUIStateChangeEventArgs.cs
- CustomErrorsSectionWrapper.cs
- LassoHelper.cs
- SqlDeflator.cs
- CodeTypeOfExpression.cs
- Part.cs
- ActiveXHelper.cs
- HtmlTableCellCollection.cs
- Dump.cs
- SingleConverter.cs
- NavigationFailedEventArgs.cs
- LicenseManager.cs
- GridToolTip.cs
- IIS7UserPrincipal.cs
- Rotation3DAnimationBase.cs
- RelationshipEndCollection.cs
- ValidatorCollection.cs
- EventLogTraceListener.cs
- LayoutUtils.cs
- Native.cs
- HttpRequest.cs
- IdentityNotMappedException.cs