Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / EntityClient / EntityProviderServices.cs / 1305376 / EntityProviderServices.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //----------------------------------------------------------------------------- namespace System.Data.EntityClient { using System.Collections.Generic; using System.Data.Common.CommandTrees; using System.Data.Common; using System.IO; using System.Xml; using System.Data.Metadata.Edm; using System.Diagnostics; ////// The class for provider services of the entity client /// internal sealed class EntityProviderServices : DbProviderServices { ////// Singleton object; /// internal static readonly EntityProviderServices Instance = new EntityProviderServices(); ////// Create a Command Definition object, given the connection and command tree /// /// connection to the underlying provider /// command tree for the statement ///an exectable command definition object ///connection and commandTree arguments must not be null protected override DbCommandDefinition CreateDbCommandDefinition(DbProviderManifest providerManifest, DbCommandTree commandTree) { EntityUtil.CheckArgumentNull(providerManifest, "providerManifest"); EntityUtil.CheckArgumentNull(commandTree, "commandTree"); StoreItemCollection storeMetadata = (StoreItemCollection)commandTree.MetadataWorkspace.GetItemCollection(DataSpace.SSpace); return this.CreateCommandDefinition(storeMetadata.StoreProviderFactory, commandTree); } internal EntityCommandDefinition CreateCommandDefinition(DbProviderFactory storeProviderFactory, DbCommandTree commandTree) { EntityUtil.CheckArgumentNull(storeProviderFactory, "storeProviderFactory"); Debug.Assert(commandTree != null, "Command Tree cannot be null"); return new EntityCommandDefinition(storeProviderFactory, commandTree); } ////// Ensures that the data space of the specified command tree is the model (C-) space /// /// The command tree for which the data space should be validated internal override void ValidateDataSpace(DbCommandTree commandTree) { Debug.Assert(commandTree != null, "Ensure command tree is non-null before calling ValidateDataSpace"); if (commandTree.DataSpace != DataSpace.CSpace) { throw EntityUtil.ProviderIncompatible(Entity.Strings.EntityClient_RequiresNonStoreCommandTree); } } ////// Create a EntityCommandDefinition object based on the prototype command /// This method is intended for provider writers to build a default command definition /// from a command. /// /// ////// prototype argument must not be null ///prototype argument must be a EntityCommand public override DbCommandDefinition CreateCommandDefinition(DbCommand prototype) { EntityUtil.CheckArgumentNull(prototype, "prototype"); return ((EntityCommand)prototype).GetCommandDefinition(); } protected override string GetDbProviderManifestToken(DbConnection connection) { EntityUtil.CheckArgumentNull(connection, "connection"); if (connection.GetType() != typeof(EntityConnection)) { throw EntityUtil.Argument(System.Data.Entity.Strings.Mapping_Provider_WrongConnectionType(typeof(EntityConnection))); } return MetadataItem.EdmProviderManifest.Token; } protected override DbProviderManifest GetDbProviderManifest(string versionHint) { EntityUtil.CheckArgumentNull(versionHint, "versionHint"); return MetadataItem.EdmProviderManifest; } } } // 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
- EventLogger.cs
- XmlNodeChangedEventArgs.cs
- AncestorChangedEventArgs.cs
- MultiPropertyDescriptorGridEntry.cs
- ListViewItemSelectionChangedEvent.cs
- SystemIPAddressInformation.cs
- JumpItem.cs
- DefaultTraceListener.cs
- Scalars.cs
- Section.cs
- LinqDataSourceView.cs
- ThreadLocal.cs
- RequestStatusBarUpdateEventArgs.cs
- UpDownBase.cs
- WebPartsPersonalization.cs
- WebPartEditVerb.cs
- CopyAction.cs
- PartialCachingAttribute.cs
- BaseInfoTable.cs
- IndexOutOfRangeException.cs
- ColorKeyFrameCollection.cs
- AppDomainAttributes.cs
- EventDescriptorCollection.cs
- PersistNameAttribute.cs
- AppDomainCompilerProxy.cs
- ParallelQuery.cs
- Configuration.cs
- CodeGenerator.cs
- SessionPageStatePersister.cs
- XMLSyntaxException.cs
- _Events.cs
- SocketConnection.cs
- HtmlAnchor.cs
- GuidelineSet.cs
- UnsafeNativeMethods.cs
- PngBitmapEncoder.cs
- TypedElement.cs
- HttpListenerResponse.cs
- mediaclock.cs
- UnsettableComboBox.cs
- MultipartContentParser.cs
- MouseActionConverter.cs
- SmtpLoginAuthenticationModule.cs
- ToolboxItem.cs
- XmlILAnnotation.cs
- ListControlConvertEventArgs.cs
- SchemaAttDef.cs
- ScriptControl.cs
- XmlTextWriter.cs
- XmlExceptionHelper.cs
- XmlImplementation.cs
- TextElementCollection.cs
- TrackingProfileCache.cs
- OptionalRstParameters.cs
- MemoryRecordBuffer.cs
- ObjectListComponentEditor.cs
- ObfuscateAssemblyAttribute.cs
- cryptoapiTransform.cs
- PageContentAsyncResult.cs
- DataPager.cs
- ByteAnimationUsingKeyFrames.cs
- BrushConverter.cs
- ClientProxyGenerator.cs
- DataGridViewAdvancedBorderStyle.cs
- FaultHandlingFilter.cs
- EntityClientCacheKey.cs
- BindMarkupExtensionSerializer.cs
- AdornerLayer.cs
- SignatureGenerator.cs
- DataPagerCommandEventArgs.cs
- XmlUTF8TextWriter.cs
- FixedSOMImage.cs
- RepeaterCommandEventArgs.cs
- UpdateException.cs
- RowUpdatedEventArgs.cs
- SchemaTypeEmitter.cs
- FontCacheUtil.cs
- Unit.cs
- TableLayoutColumnStyleCollection.cs
- VariableAction.cs
- SurrogateChar.cs
- ListBoxAutomationPeer.cs
- SecureUICommand.cs
- SafeNativeMethods.cs
- HostedElements.cs
- SettingsSavedEventArgs.cs
- MimePart.cs
- DataBindingExpressionBuilder.cs
- PackageRelationshipCollection.cs
- CompiledQuery.cs
- IFormattable.cs
- sqlinternaltransaction.cs
- StyleCollectionEditor.cs
- DrawingServices.cs
- EnumMember.cs
- MatrixTransform.cs
- PartialTrustVisibleAssembliesSection.cs
- BaseValidator.cs
- ClassicBorderDecorator.cs
- PolyLineSegment.cs