Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / EntityModel / SchemaObjectModel / KeyProperty.cs / 1305376 / KeyProperty.cs
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Data.Metadata.Edm;
namespace System.Data.EntityModel.SchemaObjectModel
{
///
/// Represents PropertyRef Element for Entity keys and referential constraints
///
internal sealed class PropertyRefElement : SchemaElement
{
#region Instance Fields
private StructuredProperty _property = null;
#endregion
#region Public Methods
///
/// construct a KeyProperty object
///
///
public PropertyRefElement(SchemaElement parentElement)
: base(parentElement)
{
}
#endregion
#region Public Properties
///
/// property chain from KeyedType to Leaf property
///
public StructuredProperty Property
{
get
{
return _property;
}
}
#endregion
#region Private Methods
internal override void ResolveTopLevelNames()
{
Debug.Assert(false, "This method should never be used. Use other overload instead");
}
///
/// Since this method can be used in different context, this method does not add any errors
/// Please make sure that the caller of this methods handles the error case and add errors
/// appropriately
///
///
///
internal bool ResolveNames(SchemaEntityType entityType)
{
if (string.IsNullOrEmpty(this.Name))
{
// Don't flag this error. This must already must have flaged as error, while handling name attribute
return true;
}
// Make sure there is a property by this name
_property = entityType.FindProperty(this.Name);
return (_property != null);
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//
// @owner [....]
// @backupOwner [....]
//---------------------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Data.Metadata.Edm;
namespace System.Data.EntityModel.SchemaObjectModel
{
///
/// Represents PropertyRef Element for Entity keys and referential constraints
///
internal sealed class PropertyRefElement : SchemaElement
{
#region Instance Fields
private StructuredProperty _property = null;
#endregion
#region Public Methods
///
/// construct a KeyProperty object
///
///
public PropertyRefElement(SchemaElement parentElement)
: base(parentElement)
{
}
#endregion
#region Public Properties
///
/// property chain from KeyedType to Leaf property
///
public StructuredProperty Property
{
get
{
return _property;
}
}
#endregion
#region Private Methods
internal override void ResolveTopLevelNames()
{
Debug.Assert(false, "This method should never be used. Use other overload instead");
}
///
/// Since this method can be used in different context, this method does not add any errors
/// Please make sure that the caller of this methods handles the error case and add errors
/// appropriately
///
///
///
internal bool ResolveNames(SchemaEntityType entityType)
{
if (string.IsNullOrEmpty(this.Name))
{
// Don't flag this error. This must already must have flaged as error, while handling name attribute
return true;
}
// Make sure there is a property by this name
_property = entityType.FindProperty(this.Name);
return (_property != null);
}
#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
- DesignerTransaction.cs
- Listbox.cs
- RepeatBehavior.cs
- HttpRuntimeSection.cs
- DrawingBrush.cs
- XPathAncestorIterator.cs
- ConfigurationManager.cs
- LabelEditEvent.cs
- TextRenderer.cs
- XmlArrayItemAttribute.cs
- RequestCacheEntry.cs
- WinFormsUtils.cs
- WebPartMenu.cs
- Msec.cs
- InkCanvasAutomationPeer.cs
- _PooledStream.cs
- Matrix3DStack.cs
- AuthenticatingEventArgs.cs
- MemberMaps.cs
- ComponentResourceKeyConverter.cs
- DecimalMinMaxAggregationOperator.cs
- TransformValueSerializer.cs
- CodeMethodReturnStatement.cs
- safemediahandle.cs
- Script.cs
- EnumerableRowCollection.cs
- UserMapPath.cs
- ViewCellRelation.cs
- StylusEditingBehavior.cs
- IgnoreSectionHandler.cs
- WpfGeneratedKnownTypes.cs
- PortCache.cs
- BufferedStream2.cs
- LicFileLicenseProvider.cs
- Metafile.cs
- TreeNodeConverter.cs
- ReflectEventDescriptor.cs
- DefaultTextStoreTextComposition.cs
- OdbcDataAdapter.cs
- NavigationProgressEventArgs.cs
- COM2ComponentEditor.cs
- DataAdapter.cs
- MdiWindowListStrip.cs
- Variable.cs
- DiscreteKeyFrames.cs
- PointCollection.cs
- InvalidDataException.cs
- ServiceRoute.cs
- GCHandleCookieTable.cs
- Types.cs
- validationstate.cs
- XmlTypeAttribute.cs
- WindowsServiceElement.cs
- GiveFeedbackEventArgs.cs
- ArithmeticException.cs
- BindingMAnagerBase.cs
- WindowsGraphicsWrapper.cs
- _LazyAsyncResult.cs
- UpdateManifestForBrowserApplication.cs
- TextSelection.cs
- CalendarButtonAutomationPeer.cs
- SortedDictionary.cs
- HighlightComponent.cs
- ListItemConverter.cs
- ColorConvertedBitmap.cs
- SchemaImporter.cs
- DataListItem.cs
- ISSmlParser.cs
- FacetDescriptionElement.cs
- DocumentApplication.cs
- FlowNode.cs
- HttpHostedTransportConfiguration.cs
- HttpApplication.cs
- KeyMatchBuilder.cs
- ProcessStartInfo.cs
- SoapSchemaMember.cs
- xmlsaver.cs
- ArgumentValidation.cs
- VersionPair.cs
- ObjectListCommandsPage.cs
- SchemaCollectionCompiler.cs
- PolicyException.cs
- SecurityException.cs
- DetailsViewUpdatedEventArgs.cs
- Size3DValueSerializer.cs
- SqlDataSourceSelectingEventArgs.cs
- CodeDesigner.cs
- ProtocolViolationException.cs
- QueryableDataSourceEditData.cs
- shaperfactory.cs
- TrustSection.cs
- DrawingGroup.cs
- PropertyGridCommands.cs
- CodeMemberField.cs
- SelectedGridItemChangedEvent.cs
- BitmapCodecInfoInternal.cs
- BindableTemplateBuilder.cs
- BufferAllocator.cs
- FragmentNavigationEventArgs.cs
- KeyPressEvent.cs