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
- ToolStripComboBox.cs
- ToolStripOverflowButton.cs
- StackBuilderSink.cs
- ScriptResourceDefinition.cs
- DesignerTransaction.cs
- NamedElement.cs
- SoapAttributes.cs
- Membership.cs
- XPathExpr.cs
- EncryptedPackage.cs
- ZipArchive.cs
- MetaTableHelper.cs
- WebEncodingValidator.cs
- XhtmlBasicTextViewAdapter.cs
- RepeaterItemCollection.cs
- PathBox.cs
- ToolBarButtonClickEvent.cs
- XamlToRtfParser.cs
- filewebrequest.cs
- WrappedKeySecurityTokenParameters.cs
- MatrixTransform.cs
- ArrayList.cs
- itemelement.cs
- CacheModeConverter.cs
- DataPagerFieldCommandEventArgs.cs
- SqlUtil.cs
- XmlConverter.cs
- ModifiableIteratorCollection.cs
- MatrixAnimationUsingKeyFrames.cs
- CapabilitiesAssignment.cs
- BinaryObjectInfo.cs
- Events.cs
- PreservationFileReader.cs
- metadatamappinghashervisitor.cs
- _HelperAsyncResults.cs
- SocketException.cs
- IImplicitResourceProvider.cs
- PasswordDeriveBytes.cs
- SuppressIldasmAttribute.cs
- PassportAuthenticationEventArgs.cs
- ProcessModule.cs
- BuildResultCache.cs
- ConfigDefinitionUpdates.cs
- ComplusEndpointConfigContainer.cs
- UpdatePanelTrigger.cs
- PagePropertiesChangingEventArgs.cs
- KnownTypesHelper.cs
- RegexCompilationInfo.cs
- DetailsViewPageEventArgs.cs
- BackgroundWorker.cs
- ManagedIStream.cs
- httpapplicationstate.cs
- PkcsUtils.cs
- Inflater.cs
- TabControlEvent.cs
- FixedSOMTable.cs
- SelectionPattern.cs
- SettingsSavedEventArgs.cs
- RoutedEventValueSerializer.cs
- CodeBlockBuilder.cs
- DataColumnMapping.cs
- EventPrivateKey.cs
- ThrowHelper.cs
- FormViewDeletedEventArgs.cs
- Itemizer.cs
- KeyValuePairs.cs
- DetailsViewRow.cs
- TokenBasedSet.cs
- PlatformCulture.cs
- RuntimeConfigLKG.cs
- DesignerObjectListAdapter.cs
- ElementsClipboardData.cs
- Thickness.cs
- ConsoleTraceListener.cs
- UpDownBase.cs
- SecurityDescriptor.cs
- CacheHelper.cs
- DBConnectionString.cs
- ConfigurationStrings.cs
- FileEnumerator.cs
- RelationshipConstraintValidator.cs
- HttpListenerResponse.cs
- UniqueID.cs
- ExpandCollapseProviderWrapper.cs
- XmlILConstructAnalyzer.cs
- EncoderFallback.cs
- XPathChildIterator.cs
- DbProviderFactoriesConfigurationHandler.cs
- SwitchLevelAttribute.cs
- HostedController.cs
- Dictionary.cs
- NetworkStream.cs
- SmtpReplyReaderFactory.cs
- SafeIUnknown.cs
- TextTreeTextBlock.cs
- MethodCallExpression.cs
- TargetInvocationException.cs
- DbConnectionHelper.cs
- ObjectCloneHelper.cs
- HttpMethodAttribute.cs