Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / DataEntity / System / Data / EntityClient / EntityProviderServices.cs / 3 / EntityProviderServices.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //----------------------------------------------------------------------------- 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); } ////// 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. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....], [....] //----------------------------------------------------------------------------- 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); } ////// 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
- ResolveNameEventArgs.cs
- TailCallAnalyzer.cs
- IItemContainerGenerator.cs
- MetadataPropertyvalue.cs
- DataServiceStreamProviderWrapper.cs
- ContextDataSourceContextData.cs
- AnchoredBlock.cs
- MessageQueuePermissionEntryCollection.cs
- ReadContentAsBinaryHelper.cs
- ViewBox.cs
- ErrorWebPart.cs
- SaveFileDialog.cs
- OdbcErrorCollection.cs
- Int64.cs
- InlineUIContainer.cs
- BamlResourceContent.cs
- ObjectComplexPropertyMapping.cs
- RangeBaseAutomationPeer.cs
- ASCIIEncoding.cs
- DesignTimeType.cs
- MachineKeyConverter.cs
- WindowsScroll.cs
- CategoryAttribute.cs
- InvalidDataException.cs
- httpapplicationstate.cs
- VectorAnimation.cs
- XmlReflectionImporter.cs
- ImageIndexConverter.cs
- EntryWrittenEventArgs.cs
- Delay.cs
- NullReferenceException.cs
- TcpConnectionPool.cs
- XmlObjectSerializerReadContextComplex.cs
- WebBrowsableAttribute.cs
- AutoResizedEvent.cs
- SimpleHandlerFactory.cs
- ScriptReference.cs
- embossbitmapeffect.cs
- ExternalException.cs
- XsltSettings.cs
- AsymmetricKeyExchangeFormatter.cs
- SrgsRuleRef.cs
- RefType.cs
- Baml2006KeyRecord.cs
- HealthMonitoringSection.cs
- CategoryGridEntry.cs
- LinqDataSourceSelectEventArgs.cs
- DynamicDocumentPaginator.cs
- CurrencyWrapper.cs
- PriorityBindingExpression.cs
- InputMethod.cs
- ListViewItemEventArgs.cs
- TextDocumentView.cs
- TransactionFilter.cs
- embossbitmapeffect.cs
- DeclarativeCatalogPart.cs
- HitTestParameters.cs
- BinaryObjectInfo.cs
- BaseAddressPrefixFilterElementCollection.cs
- ThemeInfoAttribute.cs
- Regex.cs
- AuthenticationServiceManager.cs
- Trace.cs
- NativeObjectSecurity.cs
- TextMarkerSource.cs
- SoapAttributeOverrides.cs
- WebHeaderCollection.cs
- webproxy.cs
- DbParameterHelper.cs
- SizeKeyFrameCollection.cs
- StylusEventArgs.cs
- ResourceSetExpression.cs
- RangeValidator.cs
- DataColumnMappingCollection.cs
- WindowsGraphicsCacheManager.cs
- XhtmlMobileTextWriter.cs
- CompModHelpers.cs
- UTF7Encoding.cs
- Processor.cs
- TemplateBindingExtension.cs
- MemberHolder.cs
- FactoryId.cs
- DataError.cs
- StylusPointProperty.cs
- ListViewItem.cs
- IgnoreFileBuildProvider.cs
- GeometryValueSerializer.cs
- SqlConnection.cs
- ObjectSet.cs
- RoleManagerSection.cs
- InkCanvasSelection.cs
- Pair.cs
- SqlParameterizer.cs
- AnnotationComponentChooser.cs
- KeyPressEvent.cs
- RegistryPermission.cs
- VisualBrush.cs
- TextElementAutomationPeer.cs
- ICspAsymmetricAlgorithm.cs
- DataTemplateKey.cs