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
- HtmlCalendarAdapter.cs
- ACE.cs
- Clause.cs
- CodeAssignStatement.cs
- DataGridViewCellLinkedList.cs
- CommandManager.cs
- SocketAddress.cs
- MarshalByValueComponent.cs
- ToolStripStatusLabel.cs
- SemanticResultValue.cs
- FrameworkElement.cs
- DataPagerFieldCollection.cs
- NameTable.cs
- MemoryMappedFile.cs
- Trace.cs
- ReadOnlyObservableCollection.cs
- PropertyStore.cs
- StylusCollection.cs
- BoundPropertyEntry.cs
- SettingsBindableAttribute.cs
- TextBounds.cs
- ExpressionBindingCollection.cs
- DbProviderConfigurationHandler.cs
- OperationCanceledException.cs
- UxThemeWrapper.cs
- DiscriminatorMap.cs
- XmlFileEditor.cs
- Visual3D.cs
- Opcode.cs
- NamespaceList.cs
- ContentWrapperAttribute.cs
- Frame.cs
- ColorTransform.cs
- TransformPattern.cs
- GridViewSelectEventArgs.cs
- AttributeAction.cs
- TextViewSelectionProcessor.cs
- XmlSerializerVersionAttribute.cs
- TableLayoutCellPaintEventArgs.cs
- DiscoveryReference.cs
- Inflater.cs
- ConfigurationValidatorAttribute.cs
- MissingSatelliteAssemblyException.cs
- MissingFieldException.cs
- Sql8ConformanceChecker.cs
- AutomationIdentifierGuids.cs
- PolicyLevel.cs
- DynamicResourceExtension.cs
- XmlSchemaSimpleContentExtension.cs
- SchemaObjectWriter.cs
- DropAnimation.xaml.cs
- SmtpReplyReader.cs
- SetterBaseCollection.cs
- RuntimeArgument.cs
- PieceNameHelper.cs
- ReferentialConstraint.cs
- GlyphTypeface.cs
- _Win32.cs
- XmlDataLoader.cs
- InternalBufferOverflowException.cs
- _UncName.cs
- Size.cs
- DocumentXPathNavigator.cs
- UIElementCollection.cs
- LiteralText.cs
- StorageTypeMapping.cs
- HttpHandlersSection.cs
- AnchoredBlock.cs
- DataSourceHelper.cs
- PolygonHotSpot.cs
- XslNumber.cs
- DefaultPropertyAttribute.cs
- PropertyMap.cs
- Message.cs
- Bits.cs
- DataTransferEventArgs.cs
- DictionarySectionHandler.cs
- CatalogZoneBase.cs
- UriSectionReader.cs
- TemplateKey.cs
- HttpAsyncResult.cs
- UriExt.cs
- InvalidCastException.cs
- WindowsFormsEditorServiceHelper.cs
- HandledEventArgs.cs
- EmulateRecognizeCompletedEventArgs.cs
- AppSecurityManager.cs
- ListViewInsertEventArgs.cs
- EventSourceCreationData.cs
- FontFamily.cs
- PointCollectionValueSerializer.cs
- DataGridViewCellStyleConverter.cs
- AppLevelCompilationSectionCache.cs
- Track.cs
- FloaterParagraph.cs
- base64Transforms.cs
- SoapObjectReader.cs
- Stylesheet.cs
- ContentElementAutomationPeer.cs
- WrappedReader.cs