Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Objects / Internal / NullEntityWrapper.cs / 1305376 / NullEntityWrapper.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System.Collections; using System.Data.Objects.DataClasses; using System.Data.Entity; using System.Data.Metadata.Edm; using System.Diagnostics; namespace System.Data.Objects.Internal { ////// Defines an entity wrapper that wraps an entity with a null value. /// This is a singleton class for which the same instance is always returned /// any time a wrapper around a null entity is requested. Objects of this /// type are immutable and mutable to allow this behavior to work correctly. /// internal class NullEntityWrapper : IEntityWrapper { private static IEntityWrapper s_nullWrapper = new NullEntityWrapper(); // Private constructor prevents anyone else from creating an instance private NullEntityWrapper() { } ////// The single instance of this class. /// internal static IEntityWrapper NullWrapper { get { return s_nullWrapper; } } public RelationshipManager RelationshipManager { get { Debug.Fail("Cannot access RelationshipManager from null wrapper."); return null; } } public bool OwnsRelationshipManager { get { Debug.Fail("Cannot access RelationshipManager from null wrapper."); return false; } } public object Entity { get { return null; } } public EntityEntry ObjectStateEntry { get { return null; } set { } } public void CollectionAdd(RelatedEnd relatedEnd, object value) { Debug.Fail("Cannot modify collection from null wrapper."); } public bool CollectionRemove(RelatedEnd relatedEnd, object value) { Debug.Fail("Cannot modify collection from null wrapper."); return false; } public EntityKey EntityKey { get { Debug.Fail("Cannot access EntityKey from null wrapper."); return null; } set { Debug.Fail("Cannot access EntityKey from null wrapper."); } } public EntityKey GetEntityKeyFromEntity() { Debug.Assert(false, "Method on NullEntityWrapper should not be called"); return null; } public ObjectContext Context { get { Debug.Fail("Cannot access Context from null wrapper."); return null; } set { Debug.Fail("Cannot access Context from null wrapper."); } } public MergeOption MergeOption { get { Debug.Fail("Cannot access MergeOption from null wrapper."); return MergeOption.NoTracking; } } public void AttachContext(ObjectContext context, EntitySet entitySet, MergeOption mergeOption) { Debug.Fail("Cannot access Context from null wrapper."); } public void ResetContext(ObjectContext context, EntitySet entitySet, MergeOption mergeOption) { Debug.Fail("Cannot access Context from null wrapper."); } public void DetachContext() { Debug.Fail("Cannot access Context from null wrapper."); } public void SetChangeTracker(IEntityChangeTracker changeTracker) { Debug.Fail("Cannot access ChangeTracker from null wrapper."); } public void TakeSnapshot(EntityEntry entry) { Debug.Fail("Cannot take snapshot of using null wrapper."); } public void TakeSnapshotOfRelationships(EntityEntry entry) { Debug.Fail("Cannot take snapshot using null wrapper."); } public Type IdentityType { get { Debug.Fail("Cannot access IdentityType from null wrapper."); return null; } } public void EnsureCollectionNotNull(RelatedEnd relatedEnd) { Debug.Fail("Cannot modify collection from null wrapper."); } public object GetNavigationPropertyValue(RelatedEnd relatedEnd) { Debug.Fail("Cannot access property using null wrapper."); return null; } public void SetNavigationPropertyValue(RelatedEnd relatedEnd, object value) { Debug.Fail("Cannot access property using null wrapper."); } public void RemoveNavigationPropertyValue(RelatedEnd relatedEnd, object value) { Debug.Fail("Cannot access property using null wrapper."); } public void SetCurrentValue(EntityEntry entry, StateManagerMemberMetadata member, int ordinal, object target, object value) { Debug.Fail("Cannot set a value onto a null entity."); } public bool InitializingProxyRelatedEnds { get { Debug.Fail("Cannot access flag on null wrapper."); return false; } set { Debug.Fail("Cannot access flag on null wrapper."); } } public void UpdateCurrentValueRecord(object value, EntityEntry entry) { Debug.Fail("Cannot UpdateCurrentValueRecord on a null entity."); } public bool RequiresRelationshipChangeTracking { get { return false; } } public bool RequiresComplexChangeTracking { get { return false; } } public bool RequiresScalarChangeTracking { get { return false; } } public bool RequiresAnyChangeTracking { get { 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
- RoleService.cs
- DrawingVisual.cs
- Vertex.cs
- OpacityConverter.cs
- ListDictionary.cs
- GridViewColumnHeaderAutomationPeer.cs
- EntityCommandCompilationException.cs
- DecimalAverageAggregationOperator.cs
- CollectionViewGroupInternal.cs
- UnsafeNativeMethods.cs
- ListViewDeleteEventArgs.cs
- XmlAnyElementAttributes.cs
- BindingMAnagerBase.cs
- WeakEventManager.cs
- MailWriter.cs
- FrameworkReadOnlyPropertyMetadata.cs
- UrlPropertyAttribute.cs
- ConfigUtil.cs
- PerfService.cs
- PenContext.cs
- ParameterCollection.cs
- TextBlock.cs
- DataControlFieldTypeEditor.cs
- EntityDataSourceChangingEventArgs.cs
- Comparer.cs
- Rule.cs
- Handle.cs
- CryptoKeySecurity.cs
- DetailsView.cs
- SoapObjectReader.cs
- EpmTargetTree.cs
- DataTableReader.cs
- BinaryMethodMessage.cs
- HandoffBehavior.cs
- ConditionCollection.cs
- DataDocumentXPathNavigator.cs
- RegularExpressionValidator.cs
- GlobalEventManager.cs
- CompositeFontInfo.cs
- NativeMethods.cs
- Column.cs
- AnonymousIdentificationModule.cs
- OperationAbortedException.cs
- PagesChangedEventArgs.cs
- Substitution.cs
- StubHelpers.cs
- ScrollProviderWrapper.cs
- AtomicFile.cs
- TableColumnCollectionInternal.cs
- ContractMapping.cs
- InputScopeAttribute.cs
- WasAdminWrapper.cs
- UriGenerator.cs
- ResourceReader.cs
- TraceLevelHelper.cs
- DataControlLinkButton.cs
- RankException.cs
- TagMapInfo.cs
- propertytag.cs
- InputBinding.cs
- XmlAnyElementAttribute.cs
- OleTxTransactionInfo.cs
- mil_sdk_version.cs
- DataGridViewColumnCollection.cs
- ObjectDataSourceChooseTypePanel.cs
- ReadWriteObjectLock.cs
- Substitution.cs
- GreenMethods.cs
- _SslStream.cs
- Permission.cs
- ResourceIDHelper.cs
- AlgoModule.cs
- AutomationPattern.cs
- List.cs
- BmpBitmapDecoder.cs
- Cell.cs
- ObjectDataSourceEventArgs.cs
- OutOfProcStateClientManager.cs
- WmpBitmapEncoder.cs
- PathTooLongException.cs
- Variant.cs
- AttachmentService.cs
- ConfigViewGenerator.cs
- ServiceDescriptionReflector.cs
- As.cs
- UserPreferenceChangedEventArgs.cs
- Bitmap.cs
- Vertex.cs
- GridLength.cs
- DataListCommandEventArgs.cs
- ToolboxItemCollection.cs
- SafeArchiveContext.cs
- ParentUndoUnit.cs
- TableRowCollection.cs
- ContentOperations.cs
- RangeValidator.cs
- RawTextInputReport.cs
- AppDomainFactory.cs
- WebPartRestoreVerb.cs
- View.cs