From d1ff708949999bd8c02991beec19f3ac6c9540fe Mon Sep 17 00:00:00 2001 From: Javad Date: Fri, 20 Aug 2021 15:19:08 -0700 Subject: [PATCH] FIX | Add Component Model annotations to SqlConnectionStringBuilder class in netcore's src folder (#1152) --- .../src/Microsoft.Data.SqlClient.csproj | 4 +- .../Microsoft/Data/SqlClient/SqlCommand.cs | 46 + .../Microsoft/Data/SqlClient/SqlConnection.cs | 58 + .../SqlClient/SqlConnectionStringBuilder.cs | 147 ++ .../Data/SqlClient/SqlDataAdapter.cs | 24 + .../Microsoft/Data/SqlClient/SqlParameter.cs | 32 +- .../netcore/src/Resources/StringsHelper.cs | 1515 ++++++++++++++++- .../netfx/src/Microsoft.Data.SqlClient.csproj | 6 +- .../Microsoft/Data/SqlClient/SqlParameter.cs | 17 +- .../src/Resources/ResDescriptionAttribute.cs | 0 10 files changed, 1823 insertions(+), 26 deletions(-) rename src/Microsoft.Data.SqlClient/{netfx => }/src/Resources/ResDescriptionAttribute.cs (100%) diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj index d51d6be457..863600386c 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft.Data.SqlClient.csproj @@ -327,6 +327,9 @@ Resources\ResCategoryAttribute.cs + + Resources\ResDescriptionAttribute.cs + @@ -829,7 +832,6 @@ - True True diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs index 2d36d0812d..5329d1ff08 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlCommand.cs @@ -6,6 +6,7 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Collections.ObjectModel; +using System.ComponentModel; using System.Data; using System.Data.Common; using System.Data.SqlTypes; @@ -24,6 +25,10 @@ namespace Microsoft.Data.SqlClient { /// + [DefaultEvent("RecordsAffected")] + [ToolboxItem(true)] + [DesignerCategory("")] + // TODO: Add designer attribute when Microsoft.VSDesigner.Data.VS.SqlCommandDesigner uses Microsoft.Data.SqlClient public sealed partial class SqlCommand : DbCommand, ICloneable { private static int _objectTypeCount; // EventSource Counter @@ -423,6 +428,11 @@ private SqlCommand(SqlCommand from) : this() } /// + /// [ + [DefaultValue(null)] + [Editor("Microsoft.VSDesigner.Data.Design.DbConnectionEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_Connection)] new public SqlConnection Connection { get @@ -499,6 +509,8 @@ private SqlInternalConnectionTds InternalTdsConnection private static bool IsRetryEnabled => LocalAppContextSwitches.IsRetryEnabled; /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public SqlRetryLogicBaseProvider RetryLogicProvider { get @@ -516,6 +528,10 @@ public SqlRetryLogicBaseProvider RetryLogicProvider } /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] // MDAC 90471 + [ResCategory(StringsHelper.ResourceNames.DataCategory_Notification)] + [ResDescription(StringsHelper.ResourceNames.SqlCommand_Notification)] public SqlNotificationRequest Notification { get @@ -547,6 +563,9 @@ internal SqlStatistics Statistics } /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_Transaction)] new public SqlTransaction Transaction { get @@ -588,6 +607,11 @@ protected override DbTransaction DbTransaction } /// + [DefaultValue("")] + [Editor("Microsoft.VSDesigner.Data.SQL.Design.SqlCommandTextEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [RefreshProperties(RefreshProperties.All)] // MDAC 67707 + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_CommandText)] public override string CommandText { get @@ -607,9 +631,15 @@ public override string CommandText } /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.TCE_SqlCommand_ColumnEncryptionSetting)] public SqlCommandColumnEncryptionSetting ColumnEncryptionSetting => _columnEncryptionSetting; /// + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_CommandTimeout)] public override int CommandTimeout { get @@ -650,6 +680,10 @@ private int DefaultCommandTimeout } /// + [DefaultValue(System.Data.CommandType.Text)] + [RefreshProperties(RefreshProperties.All)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_CommandType)] public override CommandType CommandType { get @@ -683,6 +717,10 @@ public override CommandType CommandType // when the DataAdapter design wizard generates the insert/update/delete commands it will // set the DesignTimeVisible property to false so that cmds won't appear as individual objects /// + [DefaultValue(true)] + [DesignOnly(true)] + [Browsable(false)] + [EditorBrowsableAttribute(EditorBrowsableState.Never)] public override bool DesignTimeVisible { get @@ -699,6 +737,9 @@ public override bool DesignTimeVisible public bool EnableOptimizedParameterBinding { get; set; } /// + [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_Parameters)] new public SqlParameterCollection Parameters { get @@ -723,6 +764,9 @@ protected override DbParameterCollection DbParameterCollection } /// + [DefaultValue(System.Data.UpdateRowSource.Both)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_UpdatedRowSource)] public override UpdateRowSource UpdatedRowSource { get @@ -747,6 +791,8 @@ public override UpdateRowSource UpdatedRowSource } /// + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_StatementCompleted)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_StatementCompleted)] public event StatementCompletedEventHandler StatementCompleted { add diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnection.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnection.cs index 00c90bb2b9..f4594d3ca4 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnection.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnection.cs @@ -7,6 +7,7 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Collections.ObjectModel; +using System.ComponentModel; using System.Data; using System.Data.Common; using System.Diagnostics; @@ -25,6 +26,8 @@ namespace Microsoft.Data.SqlClient { /// + [DefaultEvent("InfoMessage")] + [DesignerCategory("")] public sealed partial class SqlConnection : DbConnection, ICloneable { private enum CultureCheckState : uint @@ -114,6 +117,8 @@ private static readonly ConcurrentDictionary> _ColumnEncry private static bool IsRetryEnabled => LocalAppContextSwitches.IsRetryEnabled; /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public SqlRetryLogicBaseProvider RetryLogicProvider { get @@ -131,12 +136,21 @@ public SqlRetryLogicBaseProvider RetryLogicProvider } /// + [DefaultValue(null)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.TCE_SqlConnection_ColumnEncryptionKeyCacheTtl)] public static TimeSpan ColumnEncryptionKeyCacheTtl { get; set; } = TimeSpan.FromHours(2); /// + [DefaultValue(null)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.TCE_SqlConnection_ColumnEncryptionQueryMetadataCacheEnabled)] public static bool ColumnEncryptionQueryMetadataCacheEnabled { get; set; } = true; /// + [DefaultValue(null)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.TCE_SqlConnection_TrustedColumnMasterKeyPaths)] public static IDictionary> ColumnEncryptionTrustedMasterKeyPaths => _ColumnEncryptionTrustedMasterKeyPaths; /// @@ -421,6 +435,9 @@ private void CacheConnectionStringProperties() // Create a new SqlStatistics object if not already there. // connect the parser to the object. // if there is no parser at this time we need to connect it after creation. + [DefaultValue(false)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_StatisticsEnabled)] public bool StatisticsEnabled { get @@ -546,6 +563,11 @@ internal int ConnectRetryInterval } /// + [DefaultValue("")] + [SettingsBindableAttribute(true)] + [RefreshProperties(RefreshProperties.All)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ConnectionString)] public override string ConnectionString { get @@ -602,6 +624,8 @@ public override string ConnectionString } /// + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ConnectionTimeout)] + [ResCategory(StringsHelper.ResourceNames.SqlConnection_DataSource)] public override int ConnectionTimeout { get @@ -612,6 +636,8 @@ public override int ConnectionTimeout } /// + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ConnectionTimeout)] public int CommandTimeout { get @@ -623,6 +649,9 @@ public int CommandTimeout /// // AccessToken: To be used for token based authentication + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_AccessToken)] public string AccessToken { get @@ -654,6 +683,8 @@ public string AccessToken } /// + [ResDescription(StringsHelper.ResourceNames.SqlConnection_Database)] + [ResCategory(StringsHelper.ResourceNames.SqlConnection_DataSource)] public override string Database { // if the connection is open, we need to ask the inner connection what it's @@ -724,6 +755,10 @@ internal string SQLDNSCachingSupportedStateBeforeRedirect } /// + [Browsable(true)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_DataSource)] + [ResCategory(StringsHelper.ResourceNames.SqlConnection_DataSource)] public override string DataSource { get @@ -745,6 +780,9 @@ public override string DataSource } /// + [ResCategory(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_PacketSize)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public int PacketSize { // if the connection is open, we need to ask the inner connection what it's @@ -769,6 +807,9 @@ public int PacketSize } /// + [ResCategory(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ClientConnectionId)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public Guid ClientConnectionId { get @@ -794,12 +835,18 @@ public Guid ClientConnectionId } /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ServerVersion)] public override string ServerVersion { get => GetOpenTdsConnection().ServerVersion; } /// + [Browsable(false)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_ServerProcessId)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public int ServerProcessId { get @@ -813,6 +860,9 @@ public int ServerProcessId } /// + [Browsable(false)] + [ResDescription(StringsHelper.ResourceNames.DbConnection_State)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public override ConnectionState State { get @@ -833,6 +883,9 @@ internal SqlStatistics Statistics } /// + [ResCategory(StringsHelper.ResourceNames.DataCategory_Data)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_WorkstationId)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public string WorkstationId { get @@ -847,6 +900,9 @@ public string WorkstationId } /// + [Browsable(false)] + [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] + [ResDescription(StringsHelper.ResourceNames.SqlConnection_Credential)] public SqlCredential Credential { get @@ -977,6 +1033,8 @@ protected override DbProviderFactory DbProviderFactory // /// + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_InfoMessage)] + [ResDescription(StringsHelper.ResourceNames.DbConnection_InfoMessage)] public event SqlInfoMessageEventHandler InfoMessage; /// diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnectionStringBuilder.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnectionStringBuilder.cs index e476a3b131..cbb8f0dd67 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnectionStringBuilder.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlConnectionStringBuilder.cs @@ -16,6 +16,7 @@ namespace Microsoft.Data.SqlClient { /// + [DefaultPropertyAttribute(DbConnectionStringKeywords.DataSource)] public sealed partial class SqlConnectionStringBuilder : DbConnectionStringBuilder { private enum Keywords @@ -377,6 +378,10 @@ public override object this[string keyword] } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ApplicationIntent)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Initialization)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_ApplicationIntent)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public ApplicationIntent ApplicationIntent { get { return _applicationIntent; } @@ -393,6 +398,10 @@ public ApplicationIntent ApplicationIntent } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ApplicationName)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Context)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_ApplicationName)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string ApplicationName { get { return _applicationName; } @@ -404,6 +413,11 @@ public string ApplicationName } /// + [DisplayNameAttribute(DbConnectionStringKeywords.AttachDBFilename)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_AttachDBFilename)] + [EditorAttribute("System.Windows.Forms.Design.FileNameEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", "System.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string AttachDBFilename { get { return _attachDBFilename; } @@ -415,6 +429,10 @@ public string AttachDBFilename } /// + [DisplayNameAttribute(DbConnectionStringKeywords.CommandTimeout)] + [ResCategory(StringsHelper.ResourceNames.DataCategory_Initialization)] + [ResDescription(StringsHelper.ResourceNames.DbCommand_CommandTimeout)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int CommandTimeout { get { return _commandTimeout; } @@ -430,6 +448,10 @@ public int CommandTimeout } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ConnectTimeout)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Initialization)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_ConnectTimeout)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int ConnectTimeout { get { return _connectTimeout; } @@ -445,6 +467,10 @@ public int ConnectTimeout } /// + [DisplayNameAttribute(DbConnectionStringKeywords.CurrentLanguage)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Initialization)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_CurrentLanguage)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string CurrentLanguage { get { return _currentLanguage; } @@ -456,6 +482,10 @@ public string CurrentLanguage } /// + [DisplayNameAttribute(DbConnectionStringKeywords.DataSource)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_DataSource)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string DataSource { get { return _dataSource; } @@ -467,6 +497,10 @@ public string DataSource } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Encrypt)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Encrypt)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool Encrypt { get { return _encrypt; } @@ -478,6 +512,10 @@ public bool Encrypt } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ColumnEncryptionSetting)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.TCE_DbConnectionString_ColumnEncryptionSetting)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public SqlConnectionColumnEncryptionSetting ColumnEncryptionSetting { get { return _columnEncryptionSetting; } @@ -494,6 +532,10 @@ public SqlConnectionColumnEncryptionSetting ColumnEncryptionSetting } /// + [DisplayNameAttribute(DbConnectionStringKeywords.EnclaveAttestationUrl)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.TCE_DbConnectionString_EnclaveAttestationUrl)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string EnclaveAttestationUrl { get { return _enclaveAttestationUrl; } @@ -505,6 +547,10 @@ public string EnclaveAttestationUrl } /// + [DisplayNameAttribute(DbConnectionStringKeywords.AttestationProtocol)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.TCE_DbConnectionString_AttestationProtocol)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public SqlConnectionAttestationProtocol AttestationProtocol { get { return _attestationProtocol; } @@ -521,6 +567,10 @@ public SqlConnectionAttestationProtocol AttestationProtocol } /// + [DisplayNameAttribute(DbConnectionStringKeywords.IPAddressPreference)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.TCE_DbConnectionString_IPAddressPreference)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public SqlConnectionIPAddressPreference IPAddressPreference { get => _ipAddressPreference; @@ -537,6 +587,10 @@ public SqlConnectionIPAddressPreference IPAddressPreference } /// + [DisplayNameAttribute(DbConnectionStringKeywords.TrustServerCertificate)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_TrustServerCertificate)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool TrustServerCertificate { get { return _trustServerCertificate; } @@ -548,6 +602,10 @@ public bool TrustServerCertificate } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Enlist)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Enlist)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool Enlist { get { return _enlist; } @@ -559,6 +617,10 @@ public bool Enlist } /// + [DisplayNameAttribute(DbConnectionStringKeywords.FailoverPartner)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_FailoverPartner)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string FailoverPartner { get { return _failoverPartner; } @@ -570,6 +632,10 @@ public string FailoverPartner } /// + [DisplayNameAttribute(DbConnectionStringKeywords.InitialCatalog)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_InitialCatalog)] + [RefreshPropertiesAttribute(RefreshProperties.All)] [TypeConverter(typeof(SqlInitialCatalogConverter))] public string InitialCatalog { @@ -582,6 +648,10 @@ public string InitialCatalog } /// + [DisplayNameAttribute(DbConnectionStringKeywords.IntegratedSecurity)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_IntegratedSecurity)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool IntegratedSecurity { get { return _integratedSecurity; } @@ -593,6 +663,10 @@ public bool IntegratedSecurity } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Authentication)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Authentication)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public SqlAuthenticationMethod Authentication { get { return _authentication; } @@ -609,6 +683,10 @@ public SqlAuthenticationMethod Authentication } /// + [DisplayNameAttribute(DbConnectionStringKeywords.LoadBalanceTimeout)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_LoadBalanceTimeout)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int LoadBalanceTimeout { get { return _loadBalanceTimeout; } @@ -624,6 +702,10 @@ public int LoadBalanceTimeout } /// + [DisplayNameAttribute(DbConnectionStringKeywords.MaxPoolSize)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_MaxPoolSize)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int MaxPoolSize { get { return _maxPoolSize; } @@ -639,6 +721,10 @@ public int MaxPoolSize } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ConnectRetryCount)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_ConnectionResilency)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_ConnectRetryCount)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int ConnectRetryCount { get { return _connectRetryCount; } @@ -654,6 +740,10 @@ public int ConnectRetryCount } /// + [DisplayNameAttribute(DbConnectionStringKeywords.ConnectRetryInterval)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_ConnectionResilency)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_ConnectRetryInterval)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int ConnectRetryInterval { get { return _connectRetryInterval; } @@ -670,6 +760,10 @@ public int ConnectRetryInterval /// + [DisplayNameAttribute(DbConnectionStringKeywords.MinPoolSize)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_MinPoolSize)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int MinPoolSize { get { return _minPoolSize; } @@ -685,6 +779,10 @@ public int MinPoolSize } /// + [DisplayNameAttribute(DbConnectionStringKeywords.MultipleActiveResultSets)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Advanced)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_MultipleActiveResultSets)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool MultipleActiveResultSets { get { return _multipleActiveResultSets; } @@ -697,6 +795,10 @@ public bool MultipleActiveResultSets /// [SuppressMessage("Microsoft.Naming", "CA1704:IdentifiersShouldBeSpelledCorrectly", Justification = "Reviewed and Approved by UE")] + [DisplayNameAttribute(DbConnectionStringKeywords.MultiSubnetFailover)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_MultiSubnetFailover)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool MultiSubnetFailover { get { return _multiSubnetFailover; } @@ -721,6 +823,10 @@ public string NamedConnection { } */ /// + [DisplayNameAttribute(DbConnectionStringKeywords.PacketSize)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Advanced)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_PacketSize)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public int PacketSize { get { return _packetSize; } @@ -736,6 +842,11 @@ public int PacketSize } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Password)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Password)] + [PasswordPropertyTextAttribute(true)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string Password { get { return _password; } @@ -747,6 +858,10 @@ public string Password } /// + [DisplayNameAttribute(DbConnectionStringKeywords.PersistSecurityInfo)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_PersistSecurityInfo)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool PersistSecurityInfo { get { return _persistSecurityInfo; } @@ -758,6 +873,10 @@ public bool PersistSecurityInfo } /// + [DisplayName(DbConnectionStringKeywords.PoolBlockingPeriod)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_PoolBlockingPeriod)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public PoolBlockingPeriod PoolBlockingPeriod { get { return _poolBlockingPeriod; } @@ -774,6 +893,10 @@ public PoolBlockingPeriod PoolBlockingPeriod } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Pooling)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Pooling)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Pooling)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool Pooling { get { return _pooling; } @@ -785,6 +908,10 @@ public bool Pooling } /// + [DisplayNameAttribute(DbConnectionStringKeywords.Replication)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Replication)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_Replication)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool Replication { get { return _replication; } @@ -796,6 +923,10 @@ public bool Replication } /// + [DisplayNameAttribute(DbConnectionStringKeywords.TransactionBinding)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Advanced)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_TransactionBinding)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string TransactionBinding { get { return _transactionBinding; } @@ -807,6 +938,10 @@ public string TransactionBinding } /// + [DisplayNameAttribute(DbConnectionStringKeywords.TypeSystemVersion)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Advanced)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_TypeSystemVersion)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string TypeSystemVersion { get { return _typeSystemVersion; } @@ -818,6 +953,10 @@ public string TypeSystemVersion } /// + [DisplayNameAttribute(DbConnectionStringKeywords.UserID)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Security)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_UserID)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string UserID { get { return _userID; } @@ -829,6 +968,10 @@ public string UserID } /// + [DisplayNameAttribute(DbConnectionStringKeywords.UserInstance)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Source)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_UserInstance)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public bool UserInstance { get { return _userInstance; } @@ -840,6 +983,10 @@ public bool UserInstance } /// + [DisplayNameAttribute(DbConnectionStringKeywords.WorkstationID)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Context)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbConnectionString_WorkstationID)] + [RefreshPropertiesAttribute(RefreshProperties.All)] public string WorkstationID { get { return _workstationID; } diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlDataAdapter.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlDataAdapter.cs index e745553378..1e620841a7 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlDataAdapter.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlDataAdapter.cs @@ -3,6 +3,7 @@ // See the LICENSE file in the project root for more information. using System; +using System.ComponentModel; using System.Data; using System.Data.Common; using System.Diagnostics; @@ -12,6 +13,9 @@ namespace Microsoft.Data.SqlClient { /// + [DefaultEvent("RowUpdated")] + [DesignerCategory("")] + // TODO: Add designer and toolbox attribute when Microsoft.VSDesigner.Data.VS.SqlDataAdapterDesigner uses Microsoft.Data.SqlClient public sealed class SqlDataAdapter : DbDataAdapter, IDbDataAdapter, ICloneable { private static readonly object EventRowUpdated = new object(); @@ -58,6 +62,10 @@ private SqlDataAdapter(SqlDataAdapter from) : base(from) } /// + [DefaultValue(null)] + [Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_DeleteCommand)] new public SqlCommand DeleteCommand { get { return _deleteCommand; } @@ -72,6 +80,10 @@ IDbCommand IDbDataAdapter.DeleteCommand } /// + [DefaultValue(null)] + [Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_InsertCommand)] new public SqlCommand InsertCommand { get { return _insertCommand; } @@ -86,6 +98,10 @@ IDbCommand IDbDataAdapter.InsertCommand } /// + [DefaultValue(null)] + [Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Fill)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_SelectCommand)] new public SqlCommand SelectCommand { get { return _selectCommand; } @@ -100,6 +116,10 @@ IDbCommand IDbDataAdapter.SelectCommand } /// + [DefaultValue(null)] + [Editor("Microsoft.VSDesigner.Data.Design.DBCommandEditor, " + AssemblyRef.MicrosoftVSDesigner, "System.Drawing.Design.UITypeEditor, " + AssemblyRef.SystemDrawing)] + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_UpdateCommand)] new public SqlCommand UpdateCommand { get { return _updateCommand; } @@ -224,6 +244,8 @@ protected override RowUpdatingEventArgs CreateRowUpdatingEvent(DataRow dataRow, } /// + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_RowUpdated)] public event SqlRowUpdatedEventHandler RowUpdated { add @@ -237,6 +259,8 @@ public event SqlRowUpdatedEventHandler RowUpdated } /// + [ResCategoryAttribute(StringsHelper.ResourceNames.DataCategory_Update)] + [ResDescriptionAttribute(StringsHelper.ResourceNames.DbDataAdapter_RowUpdating)] public event SqlRowUpdatingEventHandler RowUpdating { add diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlParameter.cs b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlParameter.cs index 8f0549242b..522b6364da 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlParameter.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Microsoft/Data/SqlClient/SqlParameter.cs @@ -301,7 +301,7 @@ public SqlParameter( string sourceColumn, DataRowVersion sourceVersion, object value - ) + ) : this(parameterName, dbType, size, sourceColumn) { Direction = direction; @@ -327,7 +327,7 @@ public SqlParameter( string xmlSchemaCollectionDatabase, string xmlSchemaCollectionOwningSchema, string xmlSchemaCollectionName - ) + ) : this() { ParameterName = parameterName; @@ -370,10 +370,10 @@ private SqlParameter(SqlParameter source) : this() /// For unencrypted parameters, the encryption metadata should still be sent (and will indicate /// that no encryption is needed). /// - internal bool HasReceivedMetadata - { - get => HasFlag(SqlParameterFlags.HasReceivedMetadata); - set => SetFlag(SqlParameterFlags.HasReceivedMetadata, value); + internal bool HasReceivedMetadata + { + get => HasFlag(SqlParameterFlags.HasReceivedMetadata); + set => SetFlag(SqlParameterFlags.HasReceivedMetadata, value); } /// @@ -471,16 +471,17 @@ public override DbType DbType public override void ResetDbType() => ResetSqlDbType(); /// + [ResCategory("Data")] public override string ParameterName { get => _parameterName ?? string.Empty; set { if ( - string.IsNullOrEmpty(value) || + string.IsNullOrEmpty(value) || (value.Length < TdsEnums.MAX_PARAMETER_NAME_LENGTH) || ( - (value[0] == '@') && + (value[0] == '@') && (value.Length <= TdsEnums.MAX_PARAMETER_NAME_LENGTH) ) ) @@ -690,8 +691,8 @@ public string UdtTypeName public string TypeName { get => _typeName ?? string.Empty; - set - { + set + { _typeName = value; IsDerivedParameterTypeName = false; } @@ -835,6 +836,8 @@ public override string SourceColumn } /// + [ResCategory("DataCategory_Update")] + [ResDescription("DbParameter_SourceColumnNullMapping")] public override bool SourceColumnNullMapping { get => HasFlag(SqlParameterFlags.SourceColumnNullMapping); @@ -842,10 +845,11 @@ public override bool SourceColumnNullMapping } /// + [ResCategory("Data")] public override string ToString() => ParameterName; /// - [ResCategory("Update")] + [ResCategory(StringsHelper.ResourceNames.DataCategory_Update)] public override DataRowVersion SourceVersion { get @@ -1014,7 +1018,7 @@ private void CloneHelper(SqlParameter destination) SqlParameterFlags.CoercedValueIsSqlType | SqlParameterFlags.ForceColumnEncryption | SqlParameterFlags.IsDerivedParameterTypeName - // HasScale and HasReceivedMetadata deliberately omitted + // HasScale and HasReceivedMetadata deliberately omitted ); destination._metaType = _metaType; destination._collation = _collation; @@ -1991,7 +1995,7 @@ internal MetaType ValidateTypeLengths() if ( (maxSizeInBytes > TdsEnums.TYPE_SIZE_LIMIT) || HasFlag(SqlParameterFlags.CoercedValueIsDataFeed) || - (sizeInCharacters == -1) || + (sizeInCharacters == -1) || (actualSizeInBytes == -1) ) { // is size > size able to be described by 2 bytes @@ -2006,7 +2010,7 @@ internal MetaType ValidateTypeLengths() throw ADP.InvalidMetaDataValue(); //Xml should always have IsPartialLength = true } if ( - mt.SqlDbType == SqlDbType.NVarChar || + mt.SqlDbType == SqlDbType.NVarChar || mt.SqlDbType == SqlDbType.VarChar || mt.SqlDbType == SqlDbType.VarBinary ) diff --git a/src/Microsoft.Data.SqlClient/netcore/src/Resources/StringsHelper.cs b/src/Microsoft.Data.SqlClient/netcore/src/Resources/StringsHelper.cs index 1a12852bc7..f1e9fa2061 100644 --- a/src/Microsoft.Data.SqlClient/netcore/src/Resources/StringsHelper.cs +++ b/src/Microsoft.Data.SqlClient/netcore/src/Resources/StringsHelper.cs @@ -9,7 +9,7 @@ namespace System { - internal class StringsHelper : Strings + internal partial class StringsHelper : Strings { static StringsHelper loader = null; ResourceManager resources; @@ -126,4 +126,1517 @@ public static string Format(string resourceFormat, object p1, object p2, object return string.Format(resourceFormat, p1, p2, p3); } } + + // This class is added temporary in order to have all Strings.resx as constant. + // NetFx is creating them on build time with powershell and target file located in netfx/tools folder and adds exact same class as below to obj folder for netfx. + // When we have the localization available for netcore we can follow the same pattern and add MetdaDataAttribute class and run them only on windows platform + internal partial class StringsHelper + { + internal class ResourceNames + { + internal const string ADP_Ascending = @"Ascending"; + internal const string ADP_CollectionIndexInt32 = @"Invalid index {0} for this {1} with Count={2}."; + internal const string ADP_CollectionIndexString = @"A {0} with {1} '{2}' is not contained by this {3}."; + internal const string ADP_CollectionInvalidType = @"The {0} only accepts non-null {1} type objects, not {2} objects."; + internal const string ADP_CollectionIsNotParent = @"The {0} is already contained by another {1}."; + internal const string ADP_CollectionIsParent = @"The {0} with is already contained by this {1}."; + internal const string ADP_CollectionNullValue = @"The {0} only accepts non-null {1} type objects."; + internal const string ADP_CollectionRemoveInvalidObject = @"Attempted to remove an {0} that is not contained by this {1}."; + internal const string ADP_CollectionUniqueValue = @"The {0}.{1} is required to be unique, '{2}' already exists in the collection."; + internal const string ADP_ConnectionAlreadyOpen = @"The connection was not closed. {0}"; + internal const string ADP_ConnectionStateMsg_Closed = @"The connection's current state is closed."; + internal const string ADP_ConnectionStateMsg_Connecting = @"The connection's current state is connecting."; + internal const string ADP_ConnectionStateMsg_Open = @"The connection's current state is open."; + internal const string ADP_ConnectionStateMsg_OpenExecuting = @"The connection's current state is executing."; + internal const string ADP_ConnectionStateMsg_OpenFetching = @"The connection's current state is fetching."; + internal const string ADP_ConnectionStateMsg = @"The connection's current state: {0}."; + internal const string ADP_ConnectionStringSyntax = @"Format of the initialization string does not conform to specification starting at index {0}."; + internal const string ADP_DataReaderClosed = @"Invalid attempt to call {0} when reader is closed."; + internal const string ADP_DelegatedTransactionPresent = @"Cannot enlist in the transaction because the connection is the primary connection for a delegated or promoted transaction."; + internal const string ADP_Descending = @"Descending"; + internal const string ADP_EmptyString = @"Expecting non-empty string for '{0}' parameter."; + internal const string ADP_InternalConnectionError = @"Internal DbConnection Error: {0}"; + internal const string ADP_InvalidDataDirectory = @"The DataDirectory substitute is not a string."; + internal const string ADP_InvalidEnumerationValue = @"The {0} enumeration value, {1}, is invalid."; + internal const string ADP_InvalidKey = @"Invalid keyword, contain one or more of 'no characters', 'control characters', 'leading or trailing whitespace' or 'leading semicolons'."; + internal const string ADP_InvalidOffsetValue = @"Invalid parameter Offset value '{0}'. The value must be greater than or equal to 0."; + internal const string ADP_InvalidValue = @"The value contains embedded nulls (\u0000)."; + internal const string ADP_InvalidXMLBadVersion = @"Invalid Xml; can only parse elements of version one."; + internal const string ADP_NoConnectionString = @"The ConnectionString property has not been initialized."; + internal const string ADP_NonCLSException = @"A Non CLS Exception was caught."; + internal const string ADP_NotAPermissionElement = @"Given security element is not a permission element."; + internal const string ADP_OpenConnectionPropertySet = @"Not allowed to change the '{0}' property. {1}"; + internal const string ADP_PendingAsyncOperation = @"Can not start another operation while there is an asynchronous operation pending."; + internal const string ADP_PermissionTypeMismatch = @"Type mismatch."; + internal const string ADP_PooledOpenTimeout = @"Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached."; + internal const string ADP_NonPooledOpenTimeout = @"Timeout attempting to open the connection. The time period elapsed prior to attempting to open the connection has been exceeded. This may have occurred because of too many simultaneous non-pooled connection attempts."; + internal const string ADP_InvalidMixedUsageOfSecureAndClearCredential = @"Cannot use Credential with UserID, UID, Password, or PWD connection string keywords."; + internal const string ADP_InvalidMixedUsageOfSecureCredentialAndIntegratedSecurity = @"Cannot use Credential with Integrated Security connection string keyword."; + internal const string ADP_InvalidMixedUsageOfSecureCredentialAndContextConnection = @"Cannot use Credential with Context Connection keyword."; + internal const string ADP_InvalidMixedUsageOfAccessTokenAndUserIDPassword = @"Cannot set the AccessToken property if 'UserID', 'UID', 'Password', or 'PWD' has been specified in connection string."; + internal const string ADP_InvalidMixedUsageOfAccessTokenAndIntegratedSecurity = @"Cannot set the AccessToken property if the 'Integrated Security' connection string keyword has been set to 'true' or 'SSPI'."; + internal const string ADP_InvalidMixedUsageOfAccessTokenAndContextConnection = @"Cannot set the AccessToken property with the 'Context Connection' keyword."; + internal const string ADP_InvalidMixedUsageOfAccessTokenAndCredential = @"Cannot set the AccessToken property if the Credential property is already set."; + internal const string ADP_InvalidMixedUsageOfCredentialAndAccessToken = @"Cannot set the Credential property if the AccessToken property is already set."; + internal const string ADP_InvalidMixedUsageOfAccessTokenAndAuthentication = @"Cannot set the AccessToken property if 'Authentication' has been specified in the connection string."; + internal const string ADP_MustBeReadOnly = @"{0} must be marked as read only."; + internal const string DataCategory_Data = @"Data"; + internal const string DataCategory_StateChange = @"StateChange"; + internal const string DataCategory_Update = @"Update"; + internal const string DbCommand_CommandTimeout = @"Time to wait for command to execute."; + internal const string DbConnection_State = @"The ConnectionState indicating whether the connection is open or closed."; + internal const string DbConnection_StateChange = @"Event triggered when the connection changes state."; + internal const string DbParameter_DbType = @"The parameter generic type."; + internal const string DbParameter_Direction = @"Input, output, or bidirectional parameter."; + internal const string DbParameter_IsNullable = @"a design-time property used for strongly typed code-generation."; + internal const string DbParameter_Offset = @"Offset in variable length data types."; + internal const string DbParameter_ParameterName = @"Name of the parameter."; + internal const string DbParameter_Size = @"Size of variable length data types (string & arrays)."; + internal const string DbParameter_SourceColumn = @"When used by a DataAdapter.Update, the source column name that is used to find the DataSetColumn name in the ColumnMappings. This is to copy a value between the parameter and a data row."; + internal const string DbParameter_SourceVersion = @"When used by a DataAdapter.Update (UpdateCommand only), the version of the DataRow value that is used to update the data source."; + internal const string DbParameter_SourceColumnNullMapping = @"When used by DataAdapter.Update, the parameter value is changed from DBNull.Value into (Int32)1 or (Int32)0 if non-null."; + internal const string DbParameter_Value = @"Value of the parameter."; + internal const string MDF_QueryFailed = @"Unable to build the '{0}' collection because execution of the SQL query failed. See the inner exception for details."; + internal const string MDF_TooManyRestrictions = @"More restrictions were provided than the requested schema ('{0}') supports."; + internal const string MDF_InvalidRestrictionValue = @"'{2}' is not a valid value for the '{1}' restriction of the '{0}' schema collection."; + internal const string MDF_UndefinedCollection = @"The requested collection ({0}) is not defined."; + internal const string MDF_UndefinedPopulationMechanism = @"The population mechanism '{0}' is not defined."; + internal const string MDF_UnsupportedVersion = @"The requested collection ({0}) is not supported by this version of the provider."; + internal const string MDF_MissingDataSourceInformationColumn = @"One of the required DataSourceInformation tables columns is missing."; + internal const string MDF_IncorrectNumberOfDataSourceInformationRows = @"The DataSourceInformation table must contain exactly one row."; + internal const string MDF_MissingRestrictionColumn = @"One or more of the required columns of the restrictions collection is missing."; + internal const string MDF_MissingRestrictionRow = @"A restriction exists for which there is no matching row in the restrictions collection."; + internal const string MDF_NoColumns = @"The schema table contains no columns."; + internal const string MDF_UnableToBuildCollection = @"Unable to build schema collection '{0}';"; + internal const string MDF_AmbiguousCollectionName = @"The collection name '{0}' matches at least two collections with the same name but with different case, but does not match any of them exactly."; + internal const string MDF_CollectionNameISNotUnique = @"There are multiple collections named '{0}'."; + internal const string MDF_DataTableDoesNotExist = @"The collection '{0}' is missing from the metadata XML."; + internal const string MDF_InvalidXml = @"The metadata XML is invalid."; + internal const string MDF_InvalidXmlMissingColumn = @"The metadata XML is invalid. The {0} collection must contain a {1} column and it must be a string column."; + internal const string MDF_InvalidXmlInvalidValue = @"The metadata XML is invalid. The {1} column of the {0} collection must contain a non-empty string."; + internal const string DataCategory_Action = @"Action"; + internal const string DataCategory_Behavior = @"Behavior"; + internal const string DataCategory_Fill = @"Fill"; + internal const string DataCategory_InfoMessage = @"InfoMessage"; + internal const string DataCategory_Mapping = @"Mapping"; + internal const string DataCategory_StatementCompleted = @"StatementCompleted"; + internal const string DataCategory_Udt = @"UDT"; + internal const string DataCategory_Notification = @"Notification"; + internal const string DataCategory_Schema = @"Schema"; + internal const string DataCategory_Xml = @"XML"; + internal const string DataCategory_Advanced = @"Advanced"; + internal const string DataCategory_Context = @"Context"; + internal const string DataCategory_Initialization = @"Initialization"; + internal const string DataCategory_Pooling = @"Pooling"; + internal const string DataCategory_NamedConnectionString = @"Named ConnectionString"; + internal const string DataCategory_Security = @"Security"; + internal const string DataCategory_Source = @"Source"; + internal const string DataCategory_Replication = @"Replication"; + internal const string DataCategory_ConnectionResilency = @"Connection Resiliency"; + internal const string ExtendedPropertiesDescr = @"The collection that holds custom user information."; + internal const string DataSetCaseSensitiveDescr = @"Indicates whether comparing strings within the DataSet is case sensitive."; + internal const string DataSetDataSetNameDescr = @"The name of this DataSet."; + internal const string DataSetDefaultViewDescr = @"Indicates a custom ""view"" of the data contained by the DataSet. This view allows filtering, searching, and navigating through the custom data view."; + internal const string DataSetEnforceConstraintsDescr = @"Indicates whether constraint rules are to be followed."; + internal const string DataSetHasErrorsDescr = @"Indicates that the DataSet has errors."; + internal const string DataSetLocaleDescr = @"Indicates a locale under which to compare strings within the DataSet."; + internal const string DataSetNamespaceDescr = @"Indicates the XML uri namespace for the root element pointed at by this DataSet."; + internal const string DataSetPrefixDescr = @"Indicates the prefix of the namespace used for this DataSet."; + internal const string DataSetRelationsDescr = @"The collection that holds the relations for this DataSet."; + internal const string DataSetTablesDescr = @"The collection that holds the tables for this DataSet."; + internal const string DataSetMergeFailedDescr = @"Occurs when it is not possible to merge schemas for two tables with the same name."; + internal const string DataSetInitializedDescr = @"Occurs after Initialization is finished."; + internal const string DataSetDescr = @"Represents an in-memory cache of data."; + internal const string DataTableCaseSensitiveDescr = @"Indicates whether comparing strings within the table is case sensitive."; + internal const string DataTableChildRelationsDescr = @"Returns the child relations for this table."; + internal const string DataTableColumnsDescr = @"The collection that holds the columns for this table."; + internal const string DataTableConstraintsDescr = @"The collection that holds the constraints for this table."; + internal const string DataTableDataSetDescr = @"Indicates the DataSet to which this table belongs."; + internal const string DataTableDefaultViewDescr = @"This is the default DataView for the table."; + internal const string DataTableDisplayExpressionDescr = @"The expression used to compute the data-bound value of this row."; + internal const string DataTableHasErrorsDescr = @"Returns whether the table has errors."; + internal const string DataTableLocaleDescr = @"Indicates a locale under which to compare strings within the table."; + internal const string DataTableMinimumCapacityDescr = @"Indicates an initial starting size for this table."; + internal const string DataTableNamespaceDescr = @"Indicates the XML uri namespace for the elements contained in this table."; + internal const string DataTablePrefixDescr = @"Indicates the Prefix of the namespace used for this table in XML representation."; + internal const string DataTableParentRelationsDescr = @"Returns the parent relations for this table."; + internal const string DataTablePrimaryKeyDescr = @"Indicates the column(s) that represent the primary key for this table."; + internal const string DataTableRowsDescr = @"Indicates the collection that holds the rows of data for this table."; + internal const string DataTableTableNameDescr = @"Indicates the name used to look up this table in the Tables collection of a DataSet."; + internal const string DataTableRowChangedDescr = @"Occurs after a row in the table has been successfully edited."; + internal const string DataTableRowChangingDescr = @"Occurs when the row is being changed so that the event handler can modify or cancel the change. The user can modify values in the row and should throw an exception to cancel the edit."; + internal const string DataTableRowDeletedDescr = @"Occurs after a row in the table has been successfully deleted."; + internal const string DataTableRowDeletingDescr = @"Occurs when a row in the table marked for deletion. Throw an exception to cancel the deletion."; + internal const string DataTableColumnChangingDescr = @"Occurs when a value has been submitted for this column. The user can modify the proposed value and should throw an exception to cancel the edit."; + internal const string DataTableColumnChangedDescr = @"Occurs when a value has been changed for this column."; + internal const string DataTableRowsClearingDescr = @"Occurs prior to clearing all rows from the table."; + internal const string DataTableRowsClearedDescr = @"Occurs after all rows in the table has been successfully cleared."; + internal const string DataTableRowsNewRowDescr = @"Occurs after a new DataRow has been instantiated."; + internal const string DataRelationRelationNameDescr = @"The name used to look up this relation in the Relations collection of a DataSet."; + internal const string DataRelationChildColumnsDescr = @"Indicates the child columns of this relation."; + internal const string DataRelationParentColumnsDescr = @"Indicates the parent columns of this relation."; + internal const string DataRelationNested = @"Indicates whether relations are nested."; + internal const string ForeignKeyConstraintDeleteRuleDescr = @"For deletions, indicates what kind of cascading should take place across this relation."; + internal const string ForeignKeyConstraintUpdateRuleDescr = @"For updates, indicates what kind of cascading should take place across this relation."; + internal const string ForeignKeyConstraintAcceptRejectRuleDescr = @"For accept and reject changes, indicates what kind of cascading should take place across this relation."; + internal const string ForeignKeyConstraintChildColumnsDescr = @"Indicates the child columns of this constraint."; + internal const string ForeignKeyConstraintParentColumnsDescr = @"Indicates the parent columns of this constraint."; + internal const string ForeignKeyRelatedTableDescr = @"Indicates the child table of this constraint."; + internal const string KeyConstraintColumnsDescr = @"Indicates the columns of this constraint."; + internal const string KeyConstraintIsPrimaryKeyDescr = @"Indicates if this constraint is a primary key."; + internal const string ConstraintNameDescr = @"Indicates the name of this constraint."; + internal const string ConstraintTableDescr = @"Indicates the table of this constraint."; + internal const string DataColumnAllowNullDescr = @"Indicates whether null values are allowed in this column."; + internal const string DataColumnAutoIncrementDescr = @"Indicates whether the column automatically increments itself for new rows added to the table. The type of this column must be Int16, Int32, or Int64."; + internal const string DataColumnAutoIncrementSeedDescr = @"Indicates the starting value for an AutoIncrement column."; + internal const string DataColumnAutoIncrementStepDescr = @"Indicates the increment used by an AutoIncrement column."; + internal const string DataColumnCaptionDescr = @"Indicates the default user-interface caption for this column."; + internal const string DataColumnColumnNameDescr = @"Indicates the name used to look up this column in the Columns collection of a DataTable."; + internal const string DataColumnDataTableDescr = @"Returns the DataTable to which this column belongs."; + internal const string DataColumnDataTypeDescr = @"Indicates the type of data stored in this column."; + internal const string DataColumnDefaultValueDescr = @"Indicates the default column value used when adding new rows to the table."; + internal const string DataColumnExpressionDescr = @"Indicates the value that this column computes for each row based on other columns instead of taking user input."; + internal const string DataColumnMappingDescr = @"Indicates how this column persists in XML: as an attribute, element, simple content node, or nothing."; + internal const string DataColumnNamespaceDescr = @"Indicates the XML uri for elements or attributes stored in this column."; + internal const string DataColumnPrefixDescr = @"Indicates the Prefix used for this DataColumn in xml representation."; + internal const string DataColumnOrdinalDescr = @"Indicates the index of this column in the Columns collection."; + internal const string DataColumnReadOnlyDescr = @"Indicates whether this column allows changes once a row has been added to the table."; + internal const string DataColumnUniqueDescr = @"Indicates whether this column should restrict its values in the rows of the table to be unique."; + internal const string DataColumnMaxLengthDescr = @"Indicates the maximum length of the value this column allows."; + internal const string DataColumnDateTimeModeDescr = @"Indicates DateTimeMode of this DataColumn."; + internal const string DataViewAllowDeleteDescr = @"Indicates whether this DataView and the user interface associated with it allows deletes."; + internal const string DataViewAllowEditDescr = @"Indicates whether this DataView and the user interface associated with it allows edits."; + internal const string DataViewAllowNewDescr = @"Indicates whether this DataView and the user interface associated with it allows new rows to be added."; + internal const string DataViewCountDescr = @"Returns the number of items currently in this view."; + internal const string DataViewDataViewManagerDescr = @"This returns a pointer to back to the DataViewManager that owns this DataSet (if any)."; + internal const string DataViewIsOpenDescr = @"Indicates whether the view is open."; + internal const string DataViewRowFilterDescr = @"Indicates an expression used to filter the data returned by this DataView."; + internal const string DataViewRowStateFilterDescr = @"Indicates the versions of data returned by this DataView."; + internal const string DataViewSortDescr = @"Indicates the names of the column and the order in which data is returned by this DataView."; + internal const string DataViewApplyDefaultSortDescr = @"Indicates whether to use the default sort if the Sort property is not set."; + internal const string DataViewTableDescr = @"Indicates the table this DataView uses to get data."; + internal const string DataViewListChangedDescr = @"Indicates that the data returned by this DataView has somehow changed."; + internal const string DataViewManagerDataSetDescr = @"Indicates the source of data for this DataViewManager."; + internal const string DataViewManagerTableSettingsDescr = @"Indicates the sorting/filtering/state settings for any table in the corresponding DataSet."; + internal const string Xml_SimpleTypeNotSupported = @"DataSet doesn't support 'union' or 'list' as simpleType."; + internal const string Xml_MissingAttribute = @"Invalid {0} syntax: missing required '{1}' attribute."; + internal const string Xml_ValueOutOfRange = @"Value '{1}' is invalid for attribute '{0}'."; + internal const string Xml_AttributeValues = @"The value of attribute '{0}' should be '{1}' or '{2}'."; + internal const string Xml_ElementTypeNotFound = @"Cannot find ElementType name='{0}'."; + internal const string Xml_RelationParentNameMissing = @"Parent table name is missing in relation '{0}'."; + internal const string Xml_RelationChildNameMissing = @"Child table name is missing in relation '{0}'."; + internal const string Xml_RelationTableKeyMissing = @"Parent table key is missing in relation '{0}'."; + internal const string Xml_RelationChildKeyMissing = @"Child table key is missing in relation '{0}'."; + internal const string Xml_UndefinedDatatype = @"Undefined data type: '{0}'."; + internal const string Xml_DatatypeNotDefined = @"Data type not defined."; + internal const string Xml_InvalidField = @"Invalid XPath selection inside field node. Cannot find: {0}."; + internal const string Xml_InvalidSelector = @"Invalid XPath selection inside selector node: {0}."; + internal const string Xml_InvalidKey = @"Invalid 'Key' node inside constraint named: {0}."; + internal const string Xml_DuplicateConstraint = @"The constraint name {0} is already used in the schema."; + internal const string Xml_CannotConvert = @"Cannot convert '{0}' to type '{1}'."; + internal const string Xml_MissingRefer = @"Missing '{0}' part in '{1}' constraint named '{2}'."; + internal const string Xml_MismatchKeyLength = @"Invalid Relation definition: different length keys."; + internal const string Xml_CircularComplexType = @"DataSet doesn't allow the circular reference in the ComplexType named '{0}'."; + internal const string Xml_CannotInstantiateAbstract = @"DataSet cannot instantiate an abstract ComplexType for the node {0}."; + internal const string Xml_MultipleTargetConverterError = @"An error occurred with the multiple target converter while writing an Xml Schema. See the inner exception for details."; + internal const string Xml_MultipleTargetConverterEmpty = @"An error occurred with the multiple target converter while writing an Xml Schema. A null or empty string was returned."; + internal const string Xml_MergeDuplicateDeclaration = @"Duplicated declaration '{0}'."; + internal const string Xml_MissingTable = @"Cannot load diffGram. Table '{0}' is missing in the destination dataset."; + internal const string Xml_MissingSQL = @"Cannot load diffGram. The 'sql' node is missing."; + internal const string Xml_ColumnConflict = @"Column name '{0}' is defined for different mapping types."; + internal const string Xml_InvalidPrefix = @"Prefix '{0}' is not valid, because it contains special characters."; + internal const string Xml_NestedCircular = @"Circular reference in self-nested table '{0}'."; + internal const string Xml_FoundEntity = @"DataSet cannot expand entities. Use XmlValidatingReader and set the EntityHandling property accordingly."; + internal const string Xml_PolymorphismNotSupported = @"Type '{0}' does not implement IXmlSerializable interface therefore can not proceed with serialization."; + internal const string Xml_CanNotDeserializeObjectType = @"Unable to proceed with deserialization. Data does not implement IXMLSerializable, therefore polymorphism is not supported."; + internal const string Xml_DataTableInferenceNotSupported = @"DataTable does not support schema inference from Xml."; + internal const string Xml_MultipleParentRows = @"Cannot proceed with serializing DataTable '{0}'. It contains a DataRow which has multiple parent rows on the same Foreign Key."; + internal const string Xml_IsDataSetAttributeMissingInSchema = @"IsDataSet attribute is missing in input Schema."; + internal const string Xml_TooManyIsDataSetAtributeInSchema = @"Cannot determine the DataSet Element. IsDataSet attribute exist more than once."; + internal const string Xml_DynamicWithoutXmlSerializable = @"DataSet will not serialize types that implement IDynamicMetaObjectProvider but do not also implement IXmlSerializable."; + internal const string Expr_NYI = @"The feature not implemented. {0}."; + internal const string Expr_MissingOperand = @"Syntax error: Missing operand after '{0}' operator."; + internal const string Expr_TypeMismatch = @"Type mismatch in expression '{0}'."; + internal const string Expr_ExpressionTooComplex = @"Expression is too complex."; + internal const string Expr_UnboundName = @"Cannot find column [{0}]."; + internal const string Expr_InvalidString = @"The expression contains an invalid string constant: {0}."; + internal const string Expr_UndefinedFunction = @"The expression contains undefined function call {0}()."; + internal const string Expr_Syntax = @"Syntax error in the expression."; + internal const string Expr_FunctionArgumentCount = @"Invalid number of arguments: function {0}()."; + internal const string Expr_MissingRightParen = @"The expression is missing the closing parenthesis."; + internal const string Expr_UnknownToken = @"Cannot interpret token '{0}' at position {1}."; + internal const string Expr_UnknownToken1 = @"Expected {0}, but actual token at the position {2} is {1}."; + internal const string Expr_DatatypeConvertion = @"Cannot convert from {0} to {1}."; + internal const string Expr_DatavalueConvertion = @"Cannot convert value '{0}' to Type: {1}."; + internal const string Expr_InvalidName = @"Invalid column name [{0}]."; + internal const string Expr_InvalidDate = @"The expression contains invalid date constant '{0}'."; + internal const string Expr_NonConstantArgument = @"Only constant expressions are allowed in the expression list for the IN operator."; + internal const string Expr_InvalidPattern = @"Error in Like operator: the string pattern '{0}' is invalid."; + internal const string Expr_InWithoutParentheses = @"Syntax error: The items following the IN keyword must be separated by commas and be enclosed in parentheses."; + internal const string Expr_ArgumentType = @"Type mismatch in function argument: {0}(), argument {1}, expected {2}."; + internal const string Expr_ArgumentTypeInteger = @"Type mismatch in function argument: {0}(), argument {1}, expected one of the Integer types."; + internal const string Expr_TypeMismatchInBinop = @"Cannot perform '{0}' operation on {1} and {2}."; + internal const string Expr_AmbiguousBinop = @"Operator '{0}' is ambiguous on operands of type '{1}' and '{2}'. Cannot mix signed and unsigned types. Please use explicit Convert() function."; + internal const string Expr_InWithoutList = @"Syntax error: The IN keyword must be followed by a non-empty list of expressions separated by commas, and also must be enclosed in parentheses."; + internal const string Expr_UnsupportedOperator = @"The expression contains unsupported operator '{0}'."; + internal const string Expr_InvalidNameBracketing = @"The expression contains invalid name: '{0}'."; + internal const string Expr_MissingOperandBefore = @"Syntax error: Missing operand before '{0}' operator."; + internal const string Expr_TooManyRightParentheses = @"The expression has too many closing parentheses."; + internal const string Expr_UnresolvedRelation = @"The table [{0}] involved in more than one relation. You must explicitly mention a relation name in the expression '{1}'."; + internal const string Expr_AggregateArgument = @"Syntax error in aggregate argument: Expecting a single column argument with possible 'Child' qualifier."; + internal const string Expr_AggregateUnbound = @"Unbound reference in the aggregate expression '{0}'."; + internal const string Expr_EvalNoContext = @"Cannot evaluate non-constant expression without current row."; + internal const string Expr_ExpressionUnbound = @"Unbound reference in the expression '{0}'."; + internal const string Expr_ComputeNotAggregate = @"Cannot evaluate. Expression '{0}' is not an aggregate."; + internal const string Expr_FilterConvertion = @"Filter expression '{0}' does not evaluate to a Boolean term."; + internal const string Expr_InvalidType = @"Invalid type name '{0}'."; + internal const string Expr_LookupArgument = @"Syntax error in Lookup expression: Expecting keyword 'Parent' followed by a single column argument with possible relation qualifier: Parent[()].."; + internal const string Expr_InvokeArgument = @"Need a row or a table to Invoke DataFilter."; + internal const string Expr_ArgumentOutofRange = @"{0}() argument is out of range."; + internal const string Expr_IsSyntax = @"Syntax error: Invalid usage of 'Is' operator. Correct syntax: Is [Not] Null."; + internal const string Expr_Overflow = @"Value is either too large or too small for Type '{0}'."; + internal const string Expr_DivideByZero = @"Divide by zero error encountered."; + internal const string Expr_BindFailure = @"Cannot find the parent relation '{0}'."; + internal const string Expr_InvalidHoursArgument = @"'hours' argument is out of range. Value must be between -14 and +14."; + internal const string Expr_InvalidMinutesArgument = @"'minutes' argument is out of range. Value must be between -59 and +59."; + internal const string Expr_InvalidTimeZoneRange = @"Provided range for time one exceeds total of 14 hours."; + internal const string Expr_MismatchKindandTimeSpan = @"Kind property of provided DateTime argument, does not match 'hours' and 'minutes' arguments."; + internal const string Expr_UnsupportedType = @"A DataColumn of type '{0}' does not support expression."; + internal const string Data_EnforceConstraints = @"Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints."; + internal const string Data_CannotModifyCollection = @"Collection itself is not modifiable."; + internal const string Data_CaseInsensitiveNameConflict = @"The given name '{0}' matches at least two names in the collection object with different cases, but does not match either of them with the same case."; + internal const string Data_NamespaceNameConflict = @"The given name '{0}' matches at least two names in the collection object with different namespaces."; + internal const string Data_InvalidOffsetLength = @"Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection."; + internal const string Data_ArgumentOutOfRange = @"'{0}' argument is out of range."; + internal const string Data_ArgumentNull = @"'{0}' argument cannot be null."; + internal const string Data_ArgumentContainsNull = @"'{0}' argument contains null value."; + internal const string DataColumns_OutOfRange = @"Cannot find column {0}."; + internal const string DataColumns_Add1 = @"Column '{0}' already belongs to this DataTable."; + internal const string DataColumns_Add2 = @"Column '{0}' already belongs to another DataTable."; + internal const string DataColumns_Add3 = @"Cannot have more than one SimpleContent columns in a DataTable."; + internal const string DataColumns_Add4 = @"Cannot add a SimpleContent column to a table containing element columns or nested relations."; + internal const string DataColumns_AddDuplicate = @"A column named '{0}' already belongs to this DataTable."; + internal const string DataColumns_AddDuplicate2 = @"Cannot add a column named '{0}': a nested table with the same name already belongs to this DataTable."; + internal const string DataColumns_AddDuplicate3 = @"A column named '{0}' already belongs to this DataTable: cannot set a nested table name to the same name."; + internal const string DataColumns_Remove = @"Cannot remove a column that doesn't belong to this table."; + internal const string DataColumns_RemovePrimaryKey = @"Cannot remove this column, because it's part of the primary key."; + internal const string DataColumns_RemoveChildKey = @"Cannot remove this column, because it is part of the parent key for relationship {0}."; + internal const string DataColumns_RemoveConstraint = @"Cannot remove this column, because it is a part of the constraint {0} on the table {1}."; + internal const string DataColumns_RemoveExpression = @"Cannot remove this column, because it is part of an expression: {0} = {1}."; + internal const string DataColumn_AutoIncrementAndExpression = @"Cannot set AutoIncrement property for a computed column."; + internal const string DataColumn_AutoIncrementAndDefaultValue = @"Cannot set AutoIncrement property for a column with DefaultValue set."; + internal const string DataColumn_DefaultValueAndAutoIncrement = @"Cannot set a DefaultValue on an AutoIncrement column."; + internal const string DataColumn_AutoIncrementSeed = @"AutoIncrementStep must be a non-zero value."; + internal const string DataColumn_NameRequired = @"ColumnName is required when it is part of a DataTable."; + internal const string DataColumn_ChangeDataType = @"Cannot change DataType of a column once it has data."; + internal const string DataColumn_NullDataType = @"Column requires a valid DataType."; + internal const string DataColumn_DefaultValueDataType = @"The DefaultValue for column {0} is of type {1} and cannot be converted to {2}."; + internal const string DataColumn_DefaultValueDataType1 = @"The DefaultValue for the column is of type {0} and cannot be converted to {1}."; + internal const string DataColumn_DefaultValueColumnDataType = @"The DefaultValue for column {0} is of type {1}, but the column is of type {2}."; + internal const string DataColumn_ReadOnlyAndExpression = @"Cannot change ReadOnly property for the expression column."; + internal const string DataColumn_UniqueAndExpression = @"Cannot change Unique property for the expression column."; + internal const string DataColumn_ExpressionAndUnique = @"Cannot create an expression on a column that has AutoIncrement or Unique."; + internal const string DataColumn_ExpressionAndReadOnly = @"Cannot set expression because column cannot be made ReadOnly."; + internal const string DataColumn_ExpressionAndConstraint = @"Cannot set Expression property on column {0}, because it is a part of a constraint."; + internal const string DataColumn_ExpressionInConstraint = @"Cannot create a constraint based on Expression column {0}."; + internal const string DataColumn_ExpressionCircular = @"Cannot set Expression property due to circular reference in the expression."; + internal const string DataColumn_NullKeyValues = @"Column '{0}' has null values in it."; + internal const string DataColumn_NullValues = @"Column '{0}' does not allow nulls."; + internal const string DataColumn_ReadOnly = @"Column '{0}' is read only."; + internal const string DataColumn_NonUniqueValues = @"Column '{0}' contains non-unique values."; + internal const string DataColumn_NotInTheTable = @"Column '{0}' does not belong to table {1}."; + internal const string DataColumn_NotInAnyTable = @"Column must belong to a table."; + internal const string DataColumn_SetFailed = @"Couldn't store <{0}> in {1} Column. Expected type is {2}."; + internal const string DataColumn_CannotSetToNull = @"Cannot set Column '{0}' to be null. Please use DBNull instead."; + internal const string DataColumn_LongerThanMaxLength = @"Cannot set column '{0}'. The value violates the MaxLength limit of this column."; + internal const string DataColumn_HasToBeStringType = @"MaxLength applies to string data type only. You cannot set Column '{0}' property MaxLength to be non-negative number."; + internal const string DataColumn_CannotSetMaxLength = @"Cannot set Column '{0}' property MaxLength to '{1}'. There is at least one string in the table longer than the new limit."; + internal const string DataColumn_CannotSetMaxLength2 = @"Cannot set Column '{0}' property MaxLength. The Column is SimpleContent."; + internal const string DataColumn_CannotSimpleContentType = @"Cannot set Column '{0}' property DataType to {1}. The Column is SimpleContent."; + internal const string DataColumn_CannotSimpleContent = @"Cannot set Column '{0}' property MappingType to SimpleContent. The Column DataType is {1}."; + internal const string DataColumn_ExceedMaxLength = @"Column '{0}' exceeds the MaxLength limit."; + internal const string DataColumn_NotAllowDBNull = @"Column '{0}' does not allow DBNull.Value."; + internal const string DataColumn_CannotChangeNamespace = @"Cannot change the Column '{0}' property Namespace. The Column is SimpleContent."; + internal const string DataColumn_AutoIncrementCannotSetIfHasData = @"Cannot change AutoIncrement of a DataColumn with type '{0}' once it has data."; + internal const string DataColumn_NotInTheUnderlyingTable = @"Column '{0}' does not belong to underlying table '{1}'."; + internal const string DataColumn_InvalidDataColumnMapping = @"DataColumn with type '{0}' is a complexType. Can not serialize value of a complex type as Attribute"; + internal const string DataColumn_CannotSetDateTimeModeForNonDateTimeColumns = @"The DateTimeMode can be set only on DataColumns of type DateTime."; + internal const string DataColumn_InvalidDateTimeMode = @"'{0}' is Invalid DataSetDateTime value."; + internal const string DataColumn_DateTimeMode = @"Cannot change DateTimeMode from '{0}' to '{1}' once the table has data."; + internal const string DataColumn_INullableUDTwithoutStaticNull = @"Type '{0}' does not contain static Null property or field."; + internal const string DataColumn_UDTImplementsIChangeTrackingButnotIRevertible = @"Type '{0}' does not implement IRevertibleChangeTracking; therefore can not proceed with RejectChanges()."; + internal const string DataColumn_SetAddedAndModifiedCalledOnNonUnchanged = @"SetAdded and SetModified can only be called on DataRows with Unchanged DataRowState."; + internal const string DataColumn_OrdinalExceedMaximun = @"Ordinal '{0}' exceeds the maximum number."; + internal const string DataColumn_NullableTypesNotSupported = @"DataSet does not support System.Nullable<>."; + internal const string DataConstraint_NoName = @"Cannot change the name of a constraint to empty string when it is in the ConstraintCollection."; + internal const string DataConstraint_Violation = @"Cannot enforce constraints on constraint {0}."; + internal const string DataConstraint_ViolationValue = @"Column '{0}' is constrained to be unique. Value '{1}' is already present."; + internal const string DataConstraint_NotInTheTable = @"Constraint '{0}' does not belong to this DataTable."; + internal const string DataConstraint_OutOfRange = @"Cannot find constraint {0}."; + internal const string DataConstraint_Duplicate = @"Constraint matches constraint named {0} already in collection."; + internal const string DataConstraint_DuplicateName = @"A Constraint named '{0}' already belongs to this DataTable."; + internal const string DataConstraint_UniqueViolation = @"These columns don't currently have unique values."; + internal const string DataConstraint_ForeignTable = @"These columns don't point to this table."; + internal const string DataConstraint_ParentValues = @"This constraint cannot be enabled as not all values have corresponding parent values."; + internal const string DataConstraint_AddFailed = @"This constraint cannot be added since ForeignKey doesn't belong to table {0}."; + internal const string DataConstraint_RemoveFailed = @"Cannot remove a constraint that doesn't belong to this table."; + internal const string DataConstraint_NeededForForeignKeyConstraint = @"Cannot remove unique constraint '{0}'. Remove foreign key constraint '{1}' first."; + internal const string DataConstraint_CascadeDelete = @"Cannot delete this row because constraints are enforced on relation {0}, and deleting this row will strand child rows."; + internal const string DataConstraint_CascadeUpdate = @"Cannot make this change because constraints are enforced on relation {0}, and changing this value will strand child rows."; + internal const string DataConstraint_ClearParentTable = @"Cannot clear table {0} because ForeignKeyConstraint {1} enforces constraints and there are child rows in {2}."; + internal const string DataConstraint_ForeignKeyViolation = @"ForeignKeyConstraint {0} requires the child key values ({1}) to exist in the parent table."; + internal const string DataConstraint_BadObjectPropertyAccess = @"Property not accessible because '{0}'."; + internal const string DataConstraint_RemoveParentRow = @"Cannot remove this row because it has child rows, and constraints on relation {0} are enforced."; + internal const string DataConstraint_AddPrimaryKeyConstraint = @"Cannot add primary key constraint since primary key is already set for the table."; + internal const string DataConstraint_CantAddConstraintToMultipleNestedTable = @"Cannot add constraint to DataTable '{0}' which is a child table in two nested relations."; + internal const string DataKey_TableMismatch = @"Cannot create a Key from Columns that belong to different tables."; + internal const string DataKey_NoColumns = @"Cannot have 0 columns."; + internal const string DataKey_TooManyColumns = @"Cannot have more than {0} columns."; + internal const string DataKey_DuplicateColumns = @"Cannot create a Key when the same column is listed more than once: '{0}'"; + internal const string DataKey_RemovePrimaryKey = @"Cannot remove unique constraint since it's the primary key of a table."; + internal const string DataKey_RemovePrimaryKey1 = @"Cannot remove unique constraint since it's the primary key of table {0}."; + internal const string DataRelation_ColumnsTypeMismatch = @"Parent Columns and Child Columns don't have type-matching columns."; + internal const string DataRelation_KeyColumnsIdentical = @"ParentKey and ChildKey are identical."; + internal const string DataRelation_KeyLengthMismatch = @"ParentColumns and ChildColumns should be the same length."; + internal const string DataRelation_KeyZeroLength = @"ParentColumns and ChildColumns must not be zero length."; + internal const string DataRelation_ForeignRow = @"The row doesn't belong to the same DataSet as this relation."; + internal const string DataRelation_NoName = @"RelationName is required when it is part of a DataSet."; + internal const string DataRelation_ForeignTable = @"GetChildRows requires a row whose Table is {0}, but the specified row's Table is {1}."; + internal const string DataRelation_ForeignDataSet = @"This relation should connect two tables in this DataSet to be added to this DataSet."; + internal const string DataRelation_GetParentRowTableMismatch = @"GetParentRow requires a row whose Table is {0}, but the specified row's Table is {1}."; + internal const string DataRelation_SetParentRowTableMismatch = @"SetParentRow requires a child row whose Table is {0}, but the specified row's Table is {1}."; + internal const string DataRelation_DataSetMismatch = @"Cannot have a relationship between tables in different DataSets."; + internal const string DataRelation_TablesInDifferentSets = @"Cannot create a relation between tables in different DataSets."; + internal const string DataRelation_AlreadyExists = @"A relation already exists for these child columns."; + internal const string DataRelation_DoesNotExist = @"This relation doesn't belong to this relation collection."; + internal const string DataRelation_AlreadyInOtherDataSet = @"This relation already belongs to another DataSet."; + internal const string DataRelation_AlreadyInTheDataSet = @"This relation already belongs to this DataSet."; + internal const string DataRelation_DuplicateName = @"A Relation named '{0}' already belongs to this DataSet."; + internal const string DataRelation_NotInTheDataSet = @"Relation {0} does not belong to this DataSet."; + internal const string DataRelation_OutOfRange = @"Cannot find relation {0}."; + internal const string DataRelation_TableNull = @"Cannot create a collection on a null table."; + internal const string DataRelation_TableWasRemoved = @"The table this collection displays relations for has been removed from its DataSet."; + internal const string DataRelation_ChildTableMismatch = @"Cannot add a relation to this table's ParentRelation collection where this table isn't the child table."; + internal const string DataRelation_ParentTableMismatch = @"Cannot add a relation to this table's ChildRelation collection where this table isn't the parent table."; + internal const string DataRelation_RelationNestedReadOnly = @"Cannot set the 'Nested' property to false for this relation."; + internal const string DataRelation_TableCantBeNestedInTwoTables = @"The same table '{0}' cannot be the child table in two nested relations."; + internal const string DataRelation_LoopInNestedRelations = @"The table ({0}) cannot be the child table to itself in nested relations."; + internal const string DataRelation_CaseLocaleMismatch = @"Cannot add a DataRelation or Constraint that has different Locale or CaseSensitive settings between its parent and child tables."; + internal const string DataRelation_ParentOrChildColumnsDoNotHaveDataSet = @"Cannot create a DataRelation if Parent or Child Columns are not in a DataSet."; + internal const string DataRelation_InValidNestedRelation = @"Nested table '{0}' which inherits its namespace cannot have multiple parent tables in different namespaces."; + internal const string DataRelation_InValidNamespaceInNestedRelation = @"Nested table '{0}' with empty namespace cannot have multiple parent tables in different namespaces."; + internal const string DataRow_NotInTheDataSet = @"The row doesn't belong to the same DataSet as this relation."; + internal const string DataRow_NotInTheTable = @"Cannot perform this operation on a row not in the table."; + internal const string DataRow_ParentRowNotInTheDataSet = @"This relation and child row don't belong to same DataSet."; + internal const string DataRow_EditInRowChanging = @"Cannot change a proposed value in the RowChanging event."; + internal const string DataRow_EndEditInRowChanging = @"Cannot call EndEdit() inside an OnRowChanging event."; + internal const string DataRow_BeginEditInRowChanging = @"Cannot call BeginEdit() inside the RowChanging event."; + internal const string DataRow_CancelEditInRowChanging = @"Cannot call CancelEdit() inside an OnRowChanging event. Throw an exception to cancel this update."; + internal const string DataRow_DeleteInRowDeleting = @"Cannot call Delete inside an OnRowDeleting event. Throw an exception to cancel this delete."; + internal const string DataRow_ValuesArrayLength = @"Input array is longer than the number of columns in this table."; + internal const string DataRow_NoCurrentData = @"There is no Current data to access."; + internal const string DataRow_NoOriginalData = @"There is no Original data to access."; + internal const string DataRow_NoProposedData = @"There is no Proposed data to access."; + internal const string DataRow_RemovedFromTheTable = @"This row has been removed from a table and does not have any data. BeginEdit() will allow creation of new data in this row."; + internal const string DataRow_DeletedRowInaccessible = @"Deleted row information cannot be accessed through the row."; + internal const string DataRow_InvalidVersion = @"Version must be Original, Current, or Proposed."; + internal const string DataRow_OutOfRange = @"There is no row at position {0}."; + internal const string DataRow_RowInsertOutOfRange = @"The row insert position {0} is invalid."; + internal const string DataRow_RowInsertTwice = @"The rowOrder value={0} has been found twice for table named '{1}'."; + internal const string DataRow_RowInsertMissing = @"Values are missing in the rowOrder sequence for table '{0}'."; + internal const string DataRow_RowOutOfRange = @"The given DataRow is not in the current DataRowCollection."; + internal const string DataRow_AlreadyInOtherCollection = @"This row already belongs to another table."; + internal const string DataRow_AlreadyInTheCollection = @"This row already belongs to this table."; + internal const string DataRow_AlreadyDeleted = @"Cannot delete this row since it's already deleted."; + internal const string DataRow_Empty = @"This row is empty."; + internal const string DataRow_AlreadyRemoved = @"Cannot remove a row that's already been removed."; + internal const string DataRow_MultipleParents = @"A child row has multiple parents."; + internal const string DataRow_InvalidRowBitPattern = @"Unrecognized row state bit pattern."; + internal const string DataSet_SetNameToEmpty = @"Cannot change the name of the DataSet to an empty string."; + internal const string DataSet_SetDataSetNameConflicting = @"The name '{0}' is invalid. A DataSet cannot have the same name of the DataTable."; + internal const string DataSet_UnsupportedSchema = @"The schema namespace is invalid. Please use this one instead: {0}."; + internal const string DataSet_CannotChangeCaseLocale = @"Cannot change CaseSensitive or Locale property. This change would lead to at least one DataRelation or Constraint to have different Locale or CaseSensitive settings between its related tables."; + internal const string DataSet_CannotChangeSchemaSerializationMode = @"SchemaSerializationMode property can be set only if it is overridden by derived DataSet."; + internal const string DataTable_ForeignPrimaryKey = @"PrimaryKey columns do not belong to this table."; + internal const string DataTable_CannotAddToSimpleContent = @"Cannot add a nested relation or an element column to a table containing a SimpleContent column."; + internal const string DataTable_NoName = @"TableName is required when it is part of a DataSet."; + internal const string DataTable_MultipleSimpleContentColumns = @"DataTable already has a simple content column."; + internal const string DataTable_MissingPrimaryKey = @"Table doesn't have a primary key."; + internal const string DataTable_InvalidSortString = @"{0} isn't a valid Sort string entry."; + internal const string DataTable_CanNotSerializeDataTableHierarchy = @"Cannot serialize the DataTable. A DataTable being used in one or more DataColumn expressions is not a descendant of current DataTable."; + internal const string DataTable_CanNotRemoteDataTable = @"This DataTable can only be remoted as part of DataSet. One or more Expression Columns has reference to other DataTable(s)."; + internal const string DataTable_CanNotSetRemotingFormat = @"Cannot have different remoting format property value for DataSet and DataTable."; + internal const string DataTable_CanNotSerializeDataTableWithEmptyName = @"Cannot serialize the DataTable. DataTable name is not set."; + internal const string DataTable_DuplicateName = @"A DataTable named '{0}' already belongs to this DataSet."; + internal const string DataTable_DuplicateName2 = @"A DataTable named '{0}' with the same Namespace '{1}' already belongs to this DataSet."; + internal const string DataTable_SelfnestedDatasetConflictingName = @"The table ({0}) cannot be the child table to itself in a nested relation: the DataSet name conflicts with the table name."; + internal const string DataTable_DatasetConflictingName = @"The name '{0}' is invalid. A DataTable cannot have the same name of the DataSet."; + internal const string DataTable_AlreadyInOtherDataSet = @"DataTable already belongs to another DataSet."; + internal const string DataTable_AlreadyInTheDataSet = @"DataTable already belongs to this DataSet."; + internal const string DataTable_NotInTheDataSet = @"Table {0} does not belong to this DataSet."; + internal const string DataTable_OutOfRange = @"Cannot find table {0}."; + internal const string DataTable_InRelation = @"Cannot remove a table that has existing relations. Remove relations first."; + internal const string DataTable_InConstraint = @"Cannot remove table {0}, because it referenced in ForeignKeyConstraint {1}. Remove the constraint first."; + internal const string DataTable_TableNotFound = @"DataTable '{0}' does not match to any DataTable in source."; + internal const string DataMerge_MissingDefinition = @"Target DataSet missing definition for {0}."; + internal const string DataMerge_MissingConstraint = @"Target DataSet missing {0} {1}."; + internal const string DataMerge_DataTypeMismatch = @".{0} and .{0} have conflicting properties: DataType property mismatch."; + internal const string DataMerge_PrimaryKeyMismatch = @".PrimaryKey and .PrimaryKey have different Length."; + internal const string DataMerge_PrimaryKeyColumnsMismatch = @"Mismatch columns in the PrimaryKey : .{0} versus .{1}."; + internal const string DataMerge_ReltionKeyColumnsMismatch = @"Relation {0} cannot be merged, because keys have mismatch columns."; + internal const string DataMerge_MissingColumnDefinition = @"Target table {0} missing definition for column {1}."; + internal const string DataMerge_MissingPrimaryKeyColumnInSource = @"PrimaryKey column {0} does not exist in source Table."; + internal const string DataIndex_RecordStateRange = @"The RowStates parameter must be set to a valid combination of values from the DataViewRowState enumeration."; + internal const string DataIndex_FindWithoutSortOrder = @"Find finds a row based on a Sort order, and no Sort order is specified."; + internal const string DataIndex_KeyLength = @"Expecting {0} value(s) for the key being indexed, but received {1} value(s)."; + internal const string DataStorage_AggregateException = @"Invalid usage of aggregate function {0}() and Type: {1}."; + internal const string DataStorage_InvalidStorageType = @"Invalid storage type: {0}."; + internal const string DataStorage_ProblematicChars = @"The DataSet Xml persistency does not support the value '{0}' as Char value, please use Byte storage instead."; + internal const string DataStorage_SetInvalidDataType = @"Type of value has a mismatch with column type"; + internal const string DataStorage_IComparableNotDefined = @"Type '{0}' does not implement IComparable interface. Comparison cannot be done."; + internal const string DataView_SetFailed = @"Cannot set {0}."; + internal const string DataView_SetDataSetFailed = @"Cannot change DataSet on a DataViewManager that's already the default view for a DataSet."; + internal const string DataView_SetRowStateFilter = @"RowStateFilter cannot show ModifiedOriginals and ModifiedCurrents at the same time."; + internal const string DataView_SetTable = @"Cannot change Table property on a DefaultView or a DataView coming from a DataViewManager."; + internal const string DataView_CanNotSetDataSet = @"Cannot change DataSet property once it is set."; + internal const string DataView_CanNotUseDataViewManager = @"DataSet must be set prior to using DataViewManager."; + internal const string DataView_CanNotSetTable = @"Cannot change Table property once it is set."; + internal const string DataView_CanNotUse = @"DataTable must be set prior to using DataView."; + internal const string DataView_CanNotBindTable = @"Cannot bind to DataTable with no name."; + internal const string DataView_SetIListObject = @"Cannot set an object into this list."; + internal const string DataView_AddNewNotAllowNull = @"Cannot call AddNew on a DataView where AllowNew is false."; + internal const string DataView_NotOpen = @"DataView is not open."; + internal const string DataView_CreateChildView = @"The relation is not parented to the table to which this DataView points."; + internal const string DataView_CanNotDelete = @"Cannot delete on a DataSource where AllowDelete is false."; + internal const string DataView_CanNotEdit = @"Cannot edit on a DataSource where AllowEdit is false."; + internal const string DataView_GetElementIndex = @"Index {0} is either negative or above rows count."; + internal const string DataView_AddExternalObject = @"Cannot add external objects to this list."; + internal const string DataView_CanNotClear = @"Cannot clear this list."; + internal const string DataView_InsertExternalObject = @"Cannot insert external objects to this list."; + internal const string DataView_RemoveExternalObject = @"Cannot remove objects not in the list."; + internal const string DataROWView_PropertyNotFound = @"{0} is neither a DataColumn nor a DataRelation for table {1}."; + internal const string Range_Argument = @"Min ({0}) must be less than or equal to max ({1}) in a Range object."; + internal const string Range_NullRange = @"This is a null range."; + internal const string RecordManager_MinimumCapacity = @"MinimumCapacity must be non-negative."; + internal const string CodeGen_InvalidIdentifier = @"Cannot generate identifier for name '{0}'."; + internal const string CodeGen_DuplicateTableName = @"There is more than one table with the same name '{0}' (even if namespace is different)."; + internal const string CodeGen_TypeCantBeNull = @"Column '{0}': Type '{1}' cannot be null."; + internal const string CodeGen_NoCtor0 = @"Column '{0}': Type '{1}' does not have parameterless constructor."; + internal const string CodeGen_NoCtor1 = @"Column '{0}': Type '{1}' does not have constructor with string argument."; + internal const string SqlConvert_ConvertFailed = @"Cannot convert object of type '{0}' to object of type '{1}'."; + internal const string DataSet_DefaultDataException = @"Data Exception."; + internal const string DataSet_DefaultConstraintException = @"Constraint Exception."; + internal const string DataSet_DefaultDeletedRowInaccessibleException = @"Deleted rows inaccessible."; + internal const string DataSet_DefaultDuplicateNameException = @"Duplicate name not allowed."; + internal const string DataSet_DefaultInRowChangingEventException = @"Operation not supported in the RowChanging event."; + internal const string DataSet_DefaultInvalidConstraintException = @"Invalid constraint."; + internal const string DataSet_DefaultMissingPrimaryKeyException = @"Missing primary key."; + internal const string DataSet_DefaultNoNullAllowedException = @"Null not allowed."; + internal const string DataSet_DefaultReadOnlyException = @"Column is marked read only."; + internal const string DataSet_DefaultRowNotInTableException = @"Row not found in table."; + internal const string DataSet_DefaultVersionNotFoundException = @"Version not found."; + internal const string Load_ReadOnlyDataModified = @"ReadOnly Data is Modified."; + internal const string DataTableReader_InvalidDataTableReader = @"DataTableReader is invalid for current DataTable '{0}'."; + internal const string DataTableReader_SchemaInvalidDataTableReader = @"Schema of current DataTable '{0}' in DataTableReader has changed, DataTableReader is invalid."; + internal const string DataTableReader_CannotCreateDataReaderOnEmptyDataSet = @"DataTableReader Cannot be created. There is no DataTable in DataSet."; + internal const string DataTableReader_DataTableReaderArgumentIsEmpty = @"Cannot create DataTableReader. Argument is Empty."; + internal const string DataTableReader_ArgumentContainsNullValue = @"Cannot create DataTableReader. Arguments contain null value."; + internal const string DataTableReader_InvalidRowInDataTableReader = @"Current DataRow is either in Deleted or Detached state."; + internal const string DataTableReader_DataTableCleared = @"Current DataTable '{0}' is empty. There is no DataRow in DataTable."; + internal const string RbTree_InvalidState = @"DataTable internal index is corrupted: '{0}'."; + internal const string RbTree_EnumerationBroken = @"Collection was modified; enumeration operation might not execute."; + internal const string NamedSimpleType_InvalidDuplicateNamedSimpleTypeDelaration = @"Simple type '{0}' has already be declared with different '{1}'."; + internal const string DataDom_Foliation = @"Invalid foliation."; + internal const string DataDom_TableNameChange = @"Cannot change the table name once the associated DataSet is mapped to a loaded XML document."; + internal const string DataDom_TableNamespaceChange = @"Cannot change the table namespace once the associated DataSet is mapped to a loaded XML document."; + internal const string DataDom_ColumnNameChange = @"Cannot change the column name once the associated DataSet is mapped to a loaded XML document."; + internal const string DataDom_ColumnNamespaceChange = @"Cannot change the column namespace once the associated DataSet is mapped to a loaded XML document."; + internal const string DataDom_ColumnMappingChange = @"Cannot change the ColumnMapping property once the associated DataSet is mapped to a loaded XML document."; + internal const string DataDom_TableColumnsChange = @"Cannot add or remove columns from the table once the DataSet is mapped to a loaded XML document."; + internal const string DataDom_DataSetTablesChange = @"Cannot add or remove tables from the DataSet once the DataSet is mapped to a loaded XML document."; + internal const string DataDom_DataSetNestedRelationsChange = @"Cannot add, remove, or change Nested relations from the DataSet once the DataSet is mapped to a loaded XML document."; + internal const string DataDom_DataSetNull = @"The DataSet parameter is invalid. It cannot be null."; + internal const string DataDom_DataSetNameChange = @"Cannot change the DataSet name once the DataSet is mapped to a loaded XML document."; + internal const string DataDom_CloneNode = @"This type of node cannot be cloned: {0}."; + internal const string DataDom_MultipleLoad = @"Cannot load XmlDataDocument if it already contains data. Please use a new XmlDataDocument."; + internal const string DataDom_MultipleDataSet = @"DataSet can be associated with at most one XmlDataDocument. Cannot associate the DataSet with the current XmlDataDocument because the DataSet is already associated with another XmlDataDocument."; + internal const string DataDom_EnforceConstraintsShouldBeOff = @"Please set DataSet.EnforceConstraints == false before trying to edit XmlDataDocument using XML operations."; + internal const string DataDom_NotSupport_GetElementById = @"GetElementById() is not supported on DataDocument."; + internal const string DataDom_NotSupport_EntRef = @"Cannot create entity references on DataDocument."; + internal const string DataDom_NotSupport_Clear = @"Clear function on DateSet and DataTable is not supported on XmlDataDocument."; + internal const string StrongTyping_CannotRemoveColumn = @"Cannot remove column since it is built in to this dataSet."; + internal const string StrongTyping_CananotRemoveRelation = @"Cannot remove relation since it is built in to this dataSet."; + internal const string propertyChangedEventDescr = @"Occurs whenever a property for this control changes."; + internal const string collectionChangedEventDescr = @"Occurs whenever this collection's membership changes."; + internal const string StrongTyping_CananotAccessDBNull = @"Cannot get value because it is DBNull."; + internal const string ADP_PropertyNotSupported = @"The '{0}' property requires Microsoft WindowsNT or a WindowsNT based operating system."; + internal const string ConfigProviderNotFound = @"Unable to find the requested .NET Framework Data Provider. It may not be installed."; + internal const string ConfigProviderInvalid = @"The requested .NET Framework Data Provider's implementation does not have an Instance field of a System.Data.Common.DbProviderFactory derived type."; + internal const string ConfigProviderNotInstalled = @"Failed to find or load the registered .NET Framework Data Provider."; + internal const string ConfigProviderMissing = @"The missing .NET Framework Data Provider's assembly qualified name is required."; + internal const string ConfigBaseElementsOnly = @"Only elements allowed."; + internal const string ConfigBaseNoChildNodes = @"Child nodes not allowed."; + internal const string ConfigUnrecognizedAttributes = @"Unrecognized attribute '{0}'."; + internal const string ConfigUnrecognizedElement = @"Unrecognized element."; + internal const string ConfigSectionsUnique = @"The '{0}' section can only appear once per config file."; + internal const string ConfigRequiredAttributeMissing = @"Required attribute '{0}' not found."; + internal const string ConfigRequiredAttributeEmpty = @"Required attribute '{0}' cannot be empty."; + internal const string ADP_EmptyArray = @"Expecting non-empty array for '{0}' parameter."; + internal const string ADP_SingleValuedProperty = @"The only acceptable value for the property '{0}' is '{1}'."; + internal const string ADP_DoubleValuedProperty = @"The acceptable values for the property '{0}' are '{1}' or '{2}'."; + internal const string ADP_InvalidPrefixSuffix = @"Specified QuotePrefix and QuoteSuffix values do not match."; + internal const string ADP_InvalidArgumentLength = @"The length of argument '{0}' exceeds it's limit of '{1}'."; + internal const string SQL_WrongType = @"Expecting argument of type {1}, but received type {0}."; + internal const string ADP_InvalidConnectionOptionValue = @"Invalid value for key '{0}'."; + internal const string ADP_MissingConnectionOptionValue = @"Use of key '{0}' requires the key '{1}' to be present."; + internal const string ADP_InvalidConnectionOptionValueLength = @"The value's length for key '{0}' exceeds it's limit of '{1}'."; + internal const string ADP_KeywordNotSupported = @"Keyword not supported: '{0}'."; + internal const string ADP_UdlFileError = @"Unable to load the UDL file."; + internal const string ADP_InvalidUDL = @"Invalid UDL file."; + internal const string ADP_InternalProviderError = @"Internal .NET Framework Data Provider error {0}."; + internal const string ADP_NoQuoteChange = @"The QuotePrefix and QuoteSuffix properties cannot be changed once an Insert, Update, or Delete command has been generated."; + internal const string ADP_MissingSourceCommand = @"The DataAdapter.SelectCommand property needs to be initialized."; + internal const string ADP_MissingSourceCommandConnection = @"The DataAdapter.SelectCommand.Connection property needs to be initialized;"; + internal const string ADP_InvalidMultipartName = @"{0} ""{1}""."; + internal const string ADP_InvalidMultipartNameQuoteUsage = @"{0} ""{1}"", incorrect usage of quotes."; + internal const string ADP_InvalidMultipartNameToManyParts = @"{0} ""{1}"", the current limit of ""{2}"" is insufficient."; + internal const string SQL_BulkCopyDestinationTableName = @"SqlBulkCopy.WriteToServer failed because the SqlBulkCopy.DestinationTableName is an invalid multipart name"; + internal const string SQL_TDSParserTableName = @"Processing of results from SQL Server failed because of an invalid multipart name"; + internal const string SQL_UDTTypeName = @"SqlParameter.UdtTypeName is an invalid multipart name"; + internal const string SQL_TypeName = @"SqlParameter.TypeName is an invalid multipart name"; + internal const string SQL_SqlCommandCommandText = @"SqlCommand.DeriveParameters failed because the SqlCommand.CommandText property value is an invalid multipart name"; + internal const string ODBC_ODBCCommandText = @"OdbcCommandBuilder.DeriveParameters failed because the OdbcCommand.CommandText property value is an invalid multipart name"; + internal const string OLEDB_OLEDBCommandText = @"OleDbCommandBuilder.DeriveParameters failed because the OleDbCommandBuilder.CommandText property value is an invalid multipart name"; + internal const string SQLMSF_FailoverPartnerNotSupported = @"Connecting to a mirrored SQL Server instance using the MultiSubnetFailover connection option is not supported."; + internal const string ADP_ColumnSchemaExpression = @"The column mapping from SourceColumn '{0}' failed because the DataColumn '{1}' is a computed column."; + internal const string ADP_ColumnSchemaMismatch = @"Inconvertible type mismatch between SourceColumn '{0}' of {1} and the DataColumn '{2}' of {3}."; + internal const string ADP_ColumnSchemaMissing1 = @"Missing the DataColumn '{0}' for the SourceColumn '{2}'."; + internal const string ADP_ColumnSchemaMissing2 = @"Missing the DataColumn '{0}' in the DataTable '{1}' for the SourceColumn '{2}'."; + internal const string ADP_InvalidSourceColumn = @"SourceColumn is required to be a non-empty string."; + internal const string ADP_MissingColumnMapping = @"Missing SourceColumn mapping for '{0}'."; + internal const string ADP_NotSupportedEnumerationValue = @"The {0} enumeration value, {1}, is not supported by the {2} method."; + internal const string ODBC_NotSupportedEnumerationValue = @"The {0} enumeration value, {1}, is not supported by the .NET Framework Odbc Data Provider."; + internal const string OLEDB_NotSupportedEnumerationValue = @"The {0} enumeration value, {1}, is not supported by the .NET Framework OleDb Data Provider."; + internal const string SQL_NotSupportedEnumerationValue = @"The {0} enumeration value, {1}, is not supported by the .NET Framework SqlClient Data Provider."; + internal const string ADP_ComputerNameEx = @"Unable to retrieve the ComputerNameDnsFullyQualified, {0}."; + internal const string ADP_MissingTableSchema = @"Missing the '{0}' DataTable for the '{1}' SourceTable."; + internal const string ADP_InvalidSourceTable = @"SourceTable is required to be a non-empty string"; + internal const string ADP_MissingTableMapping = @"Missing SourceTable mapping: '{0}'"; + internal const string ADP_CommandTextRequired = @"{0}: CommandText property has not been initialized"; + internal const string ADP_ConnectionRequired = @"{0}: Connection property has not been initialized."; + internal const string ADP_OpenConnectionRequired = @"{0} requires an open and available Connection. {1}"; + internal const string ADP_ConnectionRequired_Fill = @"Fill: SelectCommand.Connection property has not been initialized."; + internal const string ADP_ConnectionRequired_FillPage = @"FillPage: SelectCommand.Connection property has not been initialized."; + internal const string ADP_ConnectionRequired_FillSchema = @"FillSchema: SelectCommand.Connection property has not been initialized."; + internal const string ADP_ConnectionRequired_Insert = @"Update requires the InsertCommand to have a connection object. The Connection property of the InsertCommand has not been initialized."; + internal const string ADP_ConnectionRequired_Update = @"Update requires the UpdateCommand to have a connection object. The Connection property of the UpdateCommand has not been initialized."; + internal const string ADP_ConnectionRequired_Delete = @"Update requires the DeleteCommand to have a connection object. The Connection property of the DeleteCommand has not been initialized."; + internal const string ADP_ConnectionRequired_Batch = @"Update requires a connection object. The Connection property has not been initialized."; + internal const string ADP_ConnectionRequired_Clone = @"Update requires the command clone to have a connection object. The Connection property of the command clone has not been initialized."; + internal const string ADP_ConnecitonRequired_UpdateRows = @"Update requires a connection."; + internal const string ADP_OpenConnectionRequired_Insert = @"Update requires the {0}Command to have an open connection object. {1}"; + internal const string ADP_OpenConnectionRequired_Update = @"Update requires the {0}Command to have an open connection object. {1}"; + internal const string ADP_OpenConnectionRequired_Delete = @"Update requires the {0}Command to have an open connection object. {1}"; + internal const string ADP_OpenConnectionRequired_Clone = @"Update requires the updating command to have an open connection object. {1}"; + internal const string ADP_NoStoredProcedureExists = @"The stored procedure '{0}' doesn't exist."; + internal const string ADP_TransactionCompleted = @"The transaction assigned to this command must be the most nested pending local transaction."; + internal const string ADP_TransactionConnectionMismatch = @"The transaction is either not associated with the current connection or has been completed."; + internal const string ADP_TransactionCompletedButNotDisposed = @"The transaction associated with the current connection has completed but has not been disposed. The transaction must be disposed before the connection can be used to execute SQL statements."; + internal const string ADP_TransactionRequired = @"{0} requires the command to have a transaction when the connection assigned to the command is in a pending local transaction. The Transaction property of the command has not been initialized."; + internal const string ADP_OpenResultSetExists = @"There is already an open SqlResultSet associated with this command which must be closed first."; + internal const string ADP_OpenReaderExists = @"There is already an open DataReader associated with this {0} which must be closed first."; + internal const string ADP_DeriveParametersNotSupported = @"{0} DeriveParameters only supports CommandType.StoredProcedure, not CommandType.{1}."; + internal const string ADP_CalledTwice = @"The method '{0}' cannot be called more than once for the same execution."; + internal const string ADP_IncorrectAsyncResult = @"Incorrect async result."; + internal const string ADP_MissingSelectCommand = @"The SelectCommand property has not been initialized before calling '{0}'."; + internal const string ADP_UnwantedStatementType = @"The StatementType {0} is not expected here."; + internal const string ADP_FillSchemaRequiresSourceTableName = @"FillSchema: expected a non-empty string for the SourceTable name."; + internal const string ADP_InvalidMaxRecords = @"The MaxRecords value of {0} is invalid; the value must be >= 0."; + internal const string ADP_InvalidStartRecord = @"The StartRecord value of {0} is invalid; the value must be >= 0."; + internal const string ADP_FillRequiresSourceTableName = @"Fill: expected a non-empty string for the SourceTable name."; + internal const string ADP_FillChapterAutoIncrement = @"Hierarchical chapter columns must map to an AutoIncrement DataColumn."; + internal const string ADP_MissingDataReaderFieldType = @"DataReader.GetFieldType({0}) returned null."; + internal const string ADP_OnlyOneTableForStartRecordOrMaxRecords = @"Only specify one item in the dataTables array when using non-zero values for startRecords or maxRecords."; + internal const string ADP_UpdateRequiresSourceTable = @"Update unable to find TableMapping['{0}'] or DataTable '{0}'."; + internal const string ADP_UpdateRequiresSourceTableName = @"Update: expected a non-empty SourceTable name."; + internal const string ADP_MissingTableMappingDestination = @"Missing TableMapping when TableMapping.DataSetTable='{0}'."; + internal const string ADP_UpdateRequiresCommandClone = @"Update requires the command clone to be valid."; + internal const string ADP_UpdateRequiresCommandSelect = @"Auto SQL generation during Update requires a valid SelectCommand."; + internal const string ADP_UpdateRequiresCommandInsert = @"Update requires a valid InsertCommand when passed DataRow collection with new rows."; + internal const string ADP_UpdateRequiresCommandUpdate = @"Update requires a valid UpdateCommand when passed DataRow collection with modified rows."; + internal const string ADP_UpdateRequiresCommandDelete = @"Update requires a valid DeleteCommand when passed DataRow collection with deleted rows."; + internal const string ADP_UpdateMismatchRowTable = @"DataRow[{0}] is from a different DataTable than DataRow[0]."; + internal const string ADP_RowUpdatedErrors = @"RowUpdatedEvent: Errors occurred; no additional is information available."; + internal const string ADP_RowUpdatingErrors = @"RowUpdatingEvent: Errors occurred; no additional is information available."; + internal const string ADP_ResultsNotAllowedDuringBatch = @"When batching, the command's UpdatedRowSource property value of UpdateRowSource.FirstReturnedRecord or UpdateRowSource.Both is invalid."; + internal const string ADP_UpdateConcurrencyViolation_Update = @"Concurrency violation: the UpdateCommand affected {0} of the expected {1} records."; + internal const string ADP_UpdateConcurrencyViolation_Delete = @"Concurrency violation: the DeleteCommand affected {0} of the expected {1} records."; + internal const string ADP_UpdateConcurrencyViolation_Batch = @"Concurrency violation: the batched command affected {0} of the expected {1} records."; + internal const string ADP_InvalidCommandTimeout = @"Invalid CommandTimeout value {0}; the value must be >= 0."; + internal const string ADP_UninitializedParameterSize = @"{1}[{0}]: the Size property has an invalid size of 0."; + internal const string ADP_PrepareParameterType = @"{0}.Prepare method requires all parameters to have an explicitly set type."; + internal const string ADP_PrepareParameterSize = @"{0}.Prepare method requires all variable length parameters to have an explicitly set non-zero Size."; + internal const string ADP_PrepareParameterScale = @"{0}.Prepare method requires parameters of type '{1}' have an explicitly set Precision and Scale."; + internal const string ADP_MismatchedAsyncResult = @"Mismatched end method call for asyncResult. Expected call to {0} but {1} was called instead."; + internal const string ADP_ClosedConnectionError = @"Invalid operation. The connection is closed."; + internal const string ADP_ConnectionIsDisabled = @"The connection has been disabled."; + internal const string ADP_LocalTransactionPresent = @"Cannot enlist in the transaction because a local transaction is in progress on the connection. Finish local transaction and retry."; + internal const string ADP_TransactionPresent = @"Connection currently has transaction enlisted. Finish current transaction and retry."; + internal const string ADP_EmptyDatabaseName = @"Database cannot be null, the empty string, or string of only whitespace."; + internal const string ADP_DatabaseNameTooLong = @"The argument is too long."; + internal const string ADP_InvalidConnectTimeoutValue = @"Invalid 'Connect Timeout' value which must be an integer >= 0."; + internal const string ADP_InvalidSourceBufferIndex = @"Invalid source buffer (size of {0}) offset: {1}"; + internal const string ADP_InvalidDestinationBufferIndex = @"Invalid destination buffer (size of {0}) offset: {1}"; + internal const string ADP_DataReaderNoData = @"No data exists for the row/column."; + internal const string ADP_NumericToDecimalOverflow = @"The numerical value is too large to fit into a 96 bit decimal."; + internal const string ADP_StreamClosed = @"Invalid attempt to {0} when stream is closed."; + internal const string ADP_InvalidSeekOrigin = @"Specified SeekOrigin value is invalid."; + internal const string ADP_DynamicSQLJoinUnsupported = @"Dynamic SQL generation is not supported against multiple base tables."; + internal const string ADP_DynamicSQLNoTableInfo = @"Dynamic SQL generation is not supported against a SelectCommand that does not return any base table information."; + internal const string ADP_DynamicSQLNoKeyInfoDelete = @"Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not return any key column information."; + internal const string ADP_DynamicSQLNoKeyInfoUpdate = @"Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information."; + internal const string ADP_DynamicSQLNoKeyInfoRowVersionDelete = @"Dynamic SQL generation for the DeleteCommand is not supported against a SelectCommand that does not contain a row version column."; + internal const string ADP_DynamicSQLNoKeyInfoRowVersionUpdate = @"Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not contain a row version column."; + internal const string ADP_DynamicSQLNestedQuote = @"Dynamic SQL generation not supported against table names '{0}' that contain the QuotePrefix or QuoteSuffix character '{1}'."; + internal const string ADP_NonSequentialColumnAccess = @"Invalid attempt to read from column ordinal '{0}'. With CommandBehavior.SequentialAccess, you may only read from column ordinal '{1}' or greater."; + internal const string ADP_InvalidDateTimeDigits = @"Data type '{0}' can not be formatted as a literal because it has an invalid date time digits."; + internal const string ADP_InvalidFormatValue = @"The value can not be formatted as a literal of the requested type."; + internal const string ADP_InvalidMaximumScale = @"Data type '{0}' can not be formatted as a literal because it has an invalid maximum scale."; + internal const string ADP_LiteralValueIsInvalid = @"The literal value provided is not a valid literal for the data type '{0}'."; + internal const string ADP_EvenLengthLiteralValue = @"'{0}':The length of the literal value must be even."; + internal const string ADP_HexDigitLiteralValue = @"'{0}':The literal value must be a string with hexadecimal digits"; + internal const string ADP_QuotePrefixNotSet = @"{0} requires open connection when the quote prefix has not been set."; + internal const string ADP_UnableToCreateBooleanLiteral = @"Can not determine the correct boolean literal values. Boolean literals can not be created."; + internal const string ADP_UnsupportedNativeDataTypeOleDb = @"Literals of the native data type associated with data type '{0}' are not supported."; + internal const string ADP_InvalidDataType = @"The parameter data type of {0} is invalid."; + internal const string ADP_UnknownDataType = @"No mapping exists from object type {0} to a known managed provider native type."; + internal const string ADP_UnknownDataTypeCode = @"Unable to handle an unknown TypeCode {0} returned by Type {1}."; + internal const string ADP_DbTypeNotSupported = @"No mapping exists from DbType {0} to a known {1}."; + internal const string ADP_VersionDoesNotSupportDataType = @"The version of SQL Server in use does not support datatype '{0}'."; + internal const string ADP_ParameterValueOutOfRange = @"Parameter value '{0}' is out of range."; + internal const string ADP_BadParameterName = @"Specified parameter name '{0}' is not valid."; + internal const string ADP_MultipleReturnValue = @"Multiple return value parameters are not supported."; + internal const string ADP_InvalidSizeValue = @"Invalid parameter Size value '{0}'. The value must be greater than or equal to 0."; + internal const string ADP_NegativeParameter = @"Invalid value for argument '{0}'. The value must be greater than or equal to 0."; + internal const string ADP_InvalidMetaDataValue = @"Invalid value for this metadata."; + internal const string ADP_NotRowType = @"Metadata must be SqlDbType.Row"; + internal const string ADP_ParameterConversionFailed = @"Failed to convert parameter value from a {0} to a {1}."; + internal const string ADP_ParallelTransactionsNotSupported = @"{0} does not support parallel transactions."; + internal const string ADP_TransactionZombied = @"This {0} has completed; it is no longer usable."; + internal const string ADP_DbRecordReadOnly = @"'{0}' cannot be called when the record is read only."; + internal const string ADP_DbDataUpdatableRecordReadOnly = @"'{0}' cannot be called when the DbDataRecord is read only."; + internal const string ADP_InvalidImplicitConversion = @"Implicit conversion of object type '{0}' to data type '{1}' is not supported."; + internal const string ADP_InvalidBufferSizeOrIndex = @"Buffer offset '{1}' plus the bytes available '{0}' is greater than the length of the passed in buffer."; + internal const string ADP_InvalidDataLength = @"Data length '{0}' is less than 0."; + internal const string ADP_InvalidDataLength2 = @"Specified length '{0}' is out of range."; + internal const string ADP_NonSeqByteAccess = @"Invalid {2} attempt at dataIndex '{0}'. With CommandBehavior.SequentialAccess, you may only read from dataIndex '{1}' or greater."; + internal const string ADP_OffsetOutOfRangeException = @"Offset must refer to a location within the value."; + internal const string ODBC_GetSchemaRestrictionRequired = @"""The ODBC managed provider requires that the TABLE_NAME restriction be specified and non-null for the GetSchema indexes collection."; + internal const string ADP_InvalidArgumentValue = @"Invalid argument value for method '{0}'."; + internal const string ADP_OdbcNoTypesFromProvider = @"The ODBC provider did not return results from SQLGETTYPEINFO."; + internal const string ADP_NullDataTable = @"Unexpected null DataTable argument"; + internal const string ADP_NullDataSet = @"Unexpected null DataSet argument."; + internal const string OdbcConnection_ConnectionStringTooLong = @"Connection string exceeds maximum allowed length of {0}."; + internal const string Odbc_GetTypeMapping_UnknownType = @"{0} - unable to map type."; + internal const string Odbc_UnknownSQLType = @"Unknown SQL type - {0}."; + internal const string Odbc_UnknownURTType = @"Unknown URT type - {0}."; + internal const string Odbc_NegativeArgument = @"Invalid negative argument!"; + internal const string Odbc_CantSetPropertyOnOpenConnection = @"Can't set property on an open connection."; + internal const string Odbc_NoMappingForSqlTransactionLevel = @"No valid mapping for a SQL_TRANSACTION '{0}' to a System.Data.IsolationLevel enumeration value."; + internal const string Odbc_CantEnableConnectionpooling = @"{0} - unable to enable connection pooling..."; + internal const string Odbc_CantAllocateEnvironmentHandle = @"{0} - unable to allocate an environment handle."; + internal const string Odbc_FailedToGetDescriptorHandle = @"{0} - unable to get descriptor handle."; + internal const string Odbc_NotInTransaction = @"Not in a transaction"; + internal const string Odbc_UnknownOdbcType = @"Invalid OdbcType enumeration value={0}."; + internal const string Odbc_NullData = @"Use IsDBNull when DBNull.Value data is expected."; + internal const string Odbc_ExceptionMessage = @"{0} [{1}] {2}"; + internal const string Odbc_ExceptionNoInfoMsg = @"{0} - no error information available"; + internal const string Odbc_ConnectionClosed = @"The connection is closed."; + internal const string Odbc_OpenConnectionNoOwner = @"An internal connection does not have an owner."; + internal const string Odbc_MDACWrongVersion = @"The .NET Framework Odbc Data Provider requires Microsoft Data Access Components(MDAC) version 2.6 or later. Version {0} was found currently installed."; + internal const string OleDb_MDACWrongVersion = @"The .NET Framework OleDb Data Provider requires Microsoft Data Access Components(MDAC) version 2.6 or later. Version {0} was found currently installed."; + internal const string OleDb_SchemaRowsetsNotSupported = @"'{0}' interface is not supported by the '{1}' provider. GetOleDbSchemaTable is unavailable with the current provider."; + internal const string OleDb_NoErrorInformation2 = @"'{0}' failed with no error message available, result code: {1}."; + internal const string OleDb_NoErrorInformation = @"No error message available, result code: {0}."; + internal const string OleDb_MDACNotAvailable = @"The .NET Framework Data Providers require Microsoft Data Access Components(MDAC). Please install Microsoft Data Access Components(MDAC) version 2.6 or later."; + internal const string OleDb_MSDASQLNotSupported = @"The .NET Framework Data Provider for OLEDB (Microsoft.Data.OleDb) does not support the Microsoft OLE DB Provider for ODBC Drivers (MSDASQL). Use the .NET Framework Data Provider for ODBC (System.Data.Odbc)."; + internal const string OleDb_PossiblePromptNotUserInteractive = @"The .NET Framework Data Provider for OLEDB will not allow the OLE DB Provider to prompt the user in a non-interactive environment."; + internal const string OleDb_ProviderUnavailable = @"The '{0}' provider is not registered on the local machine."; + internal const string OleDb_CommandTextNotSupported = @"The ICommandText interface is not supported by the '{0}' provider. Use CommandType.TableDirect instead."; + internal const string OleDb_TransactionsNotSupported = @"The ITransactionLocal interface is not supported by the '{0}' provider. Local transactions are unavailable with the current provider."; + internal const string OleDb_ConnectionStringSyntax = @"Format of the initialization string does not conform to the OLE DB specification. Starting around char[{0}] in the connection string."; + internal const string OleDb_AsynchronousNotSupported = @"'Asynchronous Processing' is not a supported feature of the .NET Framework Data OLE DB Provider(Microsoft.Data.OleDb)."; + internal const string OleDb_NoProviderSpecified = @"An OLE DB Provider was not specified in the ConnectionString. An example would be, 'Provider=SQLOLEDB;'."; + internal const string OleDb_InvalidProviderSpecified = @"The OLE DB Provider specified in the ConnectionString is too long."; + internal const string OleDb_InvalidRestrictionsDbInfoKeywords = @"No restrictions are expected for the DbInfoKeywords OleDbSchemaGuid."; + internal const string OleDb_InvalidRestrictionsDbInfoLiteral = @"No restrictions are expected for the DbInfoLiterals OleDbSchemaGuid."; + internal const string OleDb_InvalidRestrictionsSchemaGuids = @"No restrictions are expected for the schema guid OleDbSchemaGuid."; + internal const string OleDb_NotSupportedSchemaTable = @"The {0} OleDbSchemaGuid is not a supported schema by the '{1}' provider."; + internal const string OleDb_ConfigWrongNumberOfValues = @"The '{0}' configuration setting has the wrong number of values."; + internal const string OleDb_ConfigUnableToLoadXmlMetaDataFile = @"Unable to load the XML file specified in configuration setting '{0}'."; + internal const string OleDb_CommandParameterBadAccessor = @"Command parameter[{0}] '{1}' is invalid."; + internal const string OleDb_CommandParameterCantConvertValue = @"Command parameter[{0}] '{1}' data value could not be converted for reasons other than sign mismatch or data overflow."; + internal const string OleDb_CommandParameterSignMismatch = @"Conversion failed for command parameter[{0}] '{1}' because the data value was signed and the type used by the provider was unsigned."; + internal const string OleDb_CommandParameterDataOverflow = @"Conversion failed for command parameter[{0}] '{1}' because the data value overflowed the type used by the provider."; + internal const string OleDb_CommandParameterUnavailable = @"Provider encountered an error while sending command parameter[{0}] '{1}' value and stopped processing."; + internal const string OleDb_CommandParameterDefault = @"Parameter[{0}] '{1}' has no default value."; + internal const string OleDb_CommandParameterError = @"Error occurred with parameter[{0}]: {1}."; + internal const string OleDb_BadStatus_ParamAcc = @"Microsoft.Data.OleDb.OleDbDataAdapter internal error: invalid parameter accessor: {0} {1}."; + internal const string OleDb_UninitializedParameters = @"Parameter[{0}]: the OleDbType property is uninitialized: OleDbType.{1}."; + internal const string OleDb_NoProviderSupportForParameters = @"The ICommandWithParameters interface is not supported by the '{0}' provider. Command parameters are unsupported with the current provider."; + internal const string OleDb_NoProviderSupportForSProcResetParameters = @"Retrieving procedure parameter information is not supported by the '{0}' provider."; + internal const string OleDb_CanNotDetermineDecimalSeparator = @"Can not determine the server's decimal separator. Non-integer numeric literals can not be created."; + internal const string OleDb_Fill_NotADODB = @"Object is not an ADODB.RecordSet or an ADODB.Record."; + internal const string OleDb_Fill_EmptyRecordSet = @"Unable to retrieve the '{0}' interface from the ADODB.RecordSet object."; + internal const string OleDb_Fill_EmptyRecord = @"Unable to retrieve the IRow interface from the ADODB.Record object."; + internal const string OleDb_ISourcesRowsetNotSupported = @"Type does not support the OLE DB interface ISourcesRowset"; + internal const string OleDb_IDBInfoNotSupported = @"Cannot construct the ReservedWords schema collection because the provider does not support IDBInfo."; + internal const string OleDb_PropertyNotSupported = @"The property's value was not set because the provider did not support the '{0}' property, or the consumer attempted to get or set values of properties not in the Initialization property group and the data source object is uninitialized."; + internal const string OleDb_PropertyBadValue = @"Failed to initialize the '{0}' property for one of the following reasons: + The value data type was not the data type of the property or was not null. For example, the property was DBPROP_MEMORYUSAGE, which has a data type of Int32, and the data type was Int64. + The value was not a valid value. For example, the property was DBPROP_MEMORYUSAGE and the value was negative. + The value was a valid value for the property and the provider supports the property as a settable property, but the provider does not support the value specified. This includes the case where the value was added to the property in OLE DB after the provider was written."; + internal const string OleDb_PropertyBadOption = @"The value of Options was invalid."; + internal const string OleDb_PropertyBadColumn = @"The ColumnID element was invalid."; + internal const string OleDb_PropertyNotAllSettable = @"A '{0}' property was specified to be applied to all columns but could not be applied to one or more of them."; + internal const string OleDb_PropertyNotSettable = @"The '{0}' property was read-only, or the consumer attempted to set values of properties in the Initialization property group after the data source object was initialized. Consumers can set the value of a read-only property to its current value. This status is also returned if a settable column property could not be set for the particular column."; + internal const string OleDb_PropertyNotSet = @"The optional '{0}' property's value was not set to the specified value and setting the property to the specified value was not possible."; + internal const string OleDb_PropertyConflicting = @"The '{0}'property's value was not set because doing so would have conflicted with an existing property."; + internal const string OleDb_PropertyNotAvailable = @"(Reserved)."; + internal const string OleDb_PropertyStatusUnknown = @"The provider returned an unknown DBPROPSTATUS_ value '{0}'."; + internal const string OleDb_BadAccessor = @"Accessor validation was deferred and was performed while the method returned data. The binding was invalid for this column or parameter."; + internal const string OleDb_BadStatusRowAccessor = @"OleDbDataAdapter internal error: invalid row set accessor: Ordinal={0} Status={1}."; + internal const string OleDb_CantConvertValue = @"The data value could not be converted for reasons other than sign mismatch or data overflow. For example, the data was corrupted in the data store but the row was still retrievable."; + internal const string OleDb_CantCreate = @"The provider could not allocate memory in which to return {0} data."; + internal const string OleDb_DataOverflow = @"Conversion failed because the {0} data value overflowed the type specified for the {0} value part in the consumer's buffer."; + internal const string OleDb_GVtUnknown = @"OleDbDataAdapter internal error: [get] Unknown OLE DB data type: 0x{0} ({1})."; + internal const string OleDb_SignMismatch = @"Conversion failed because the {0} data value was signed and the type specified for the {0} value part in the consumer's buffer was unsigned."; + internal const string OleDb_SVtUnknown = @"OleDbDataAdapter internal error: [set] Unknown OLE DB data type: 0x{0} ({1})."; + internal const string OleDb_Unavailable = @"The provider could not determine the {0} value. For example, the row was just created, the default for the {0} column was not available, and the consumer had not yet set a new {0} value."; + internal const string OleDb_UnexpectedStatusValue = @"OLE DB Provider returned an unexpected status value of {0}."; + internal const string OleDb_ThreadApartmentState = @"The OleDbDataReader.Read must be used from the same thread on which is was created if that thread's ApartmentState was not ApartmentState.MTA."; + internal const string OleDb_NoErrorMessage = @"Unspecified error: {0}"; + internal const string OleDb_FailedGetDescription = @"IErrorInfo.GetDescription failed with {0}."; + internal const string OleDb_FailedGetSource = @"IErrorInfo.GetSource failed with {0}."; + internal const string OleDb_DBBindingGetVector = @"DBTYPE_VECTOR data is not supported by the .NET Framework Data OLE DB Provider(Microsoft.Data.OleDb)."; + internal const string ADP_InvalidMinMaxPoolSizeValues = @"Invalid min or max pool size values, min pool size cannot be greater than the max pool size."; + internal const string ADP_ObsoleteKeyword = @"The '{0}' keyword is obsolete. Use '{1}' instead."; + internal const string SQL_CannotGetDTCAddress = @"Unable to get the address of the distributed transaction coordinator for the server, from the server. Is DTC enabled on the server?"; + internal const string SQL_InvalidOptionLength = @"The length of the value for the connection parameter <{0}> exceeds the maximum allowed 65535 characters."; + internal const string SQL_InvalidPacketSizeValue = @"Invalid 'Packet Size'. The value must be an integer >= 512 and <= 32768."; + internal const string SQL_NullEmptyTransactionName = @"Invalid transaction or invalid name for a point at which to save within the transaction."; + internal const string SQL_SnapshotNotSupported = @"The {0} enumeration value, {1}, is not supported by SQL Server 7.0 or SQL Server 2000."; + internal const string SQL_UserInstanceFailoverNotCompatible = @"User Instance and Failover are not compatible options. Please choose only one of the two in the connection string."; + internal const string SQL_AuthenticationAndIntegratedSecurity = @"Cannot use 'Authentication' with 'Integrated Security'."; + internal const string SQL_IntegratedWithUserIDAndPassword = @"Cannot use 'Authentication=Active Directory Integrated' with 'User ID', 'UID', 'Password' or 'PWD' connection string keywords."; + internal const string SQL_InteractiveWithPassword = @"Cannot use 'Authentication=Active Directory Interactive' with 'Password' or 'PWD' connection string keywords."; + internal const string SQL_DeviceFlowWithUsernamePassword = @"Cannot use 'Authentication=Active Directory Device Code Flow' with 'User ID', 'UID', 'Password' or 'PWD' connection string keywords."; + internal const string SQL_NonInteractiveWithPassword = @"Cannot use 'Authentication={0}' with 'Password' or 'PWD' connection string keywords."; + internal const string SQL_SettingIntegratedWithCredential = @"Cannot use 'Authentication=Active Directory Integrated', if the Credential property has been set."; + internal const string SQL_SettingCredentialWithIntegrated = @"Cannot set the Credential property if 'Authentication=Active Directory Integrated' has been specified in the connection string."; + internal const string SQL_Certificate = @"Incorrect authentication parameters specified with certificate authentication."; + internal const string SQL_EncryptionNotSupportedByClient = @"The instance of SQL Server you attempted to connect to requires encryption but this machine does not support it."; + internal const string SQL_EncryptionNotSupportedByServer = @"The instance of SQL Server you attempted to connect to does not support encryption."; + internal const string SQL_CTAIPNotSupportedByServer = @"The instance of SQL Server you attempted to connect to does not support CTAIP."; + internal const string SQL_InvalidSQLServerVersionUnknown = @"Unsupported SQL Server version. The .NET Framework SqlClient Data Provider can only be used with SQL Server versions 7.0 and later."; + internal const string SQL_CannotModifyPropertyAsyncOperationInProgress = @"{0} cannot be changed while async operation is in progress."; + internal const string SQL_AsyncConnectionRequired = @"This command requires an asynchronous connection. Set ""Asynchronous Processing=true"" in the connection string."; + internal const string SQL_FatalTimeout = @"Timeout expired. The connection has been broken as a result."; + internal const string SQL_InstanceFailure = @"Instance failure."; + internal const string SQL_CredentialsNotProvided = @"Either Credential or both 'User ID' and 'Password' (or 'UID' and 'PWD') connection string keywords must be specified, if 'Authentication={0}'."; + internal const string SQL_ChangePasswordArgumentMissing = @"The '{0}' argument must not be null or empty."; + internal const string SQL_ChangePasswordConflictsWithSSPI = @"ChangePassword can only be used with SQL authentication, not with integrated security."; + internal const string SQL_ChangePasswordUseOfUnallowedKey = @"The keyword '{0}' must not be specified in the connectionString argument to ChangePassword."; + internal const string SQL_UnknownSysTxIsolationLevel = @"Unrecognized System.Transactions.IsolationLevel enumeration value: {0}."; + internal const string SQL_InvalidPartnerConfiguration = @"Server {0}, database {1} is not configured for database mirroring."; + internal const string SQL_MarsUnsupportedOnConnection = @"The connection does not support MultipleActiveResultSets."; + internal const string SQL_MSALFailure = @"Failed to authenticate the user {0} in Active Directory (Authentication={1})."; + internal const string SQL_MSALInnerException = @"Error code 0x{0}; state {1}"; + internal const string SQL_ChangePasswordRequiresYukon = @"ChangePassword requires SQL Server 9.0 or later."; + internal const string SQL_NonLocalSSEInstance = @"SSE Instance re-direction is not supported for non-local user instances."; + internal const string SQL_UnsupportedAuthentication = @"The authentication '{0}' is not supported."; + internal const string SQL_UnsupportedSqlAuthenticationMethod = @"SQL authentication method '{0}' is not supported."; + internal const string SQL_CannotCreateAuthProvider = @"Failed to instantiate an authentication provider with type '{1}' for '{0}'."; + internal const string SQL_CannotCreateAuthInitializer = @"Failed to instantiate a SqlAuthenticationInitializer with type '{0}'."; + internal const string SQL_CannotInitializeAuthProvider = @"The provider '{0}' threw an exception while initializing."; + internal const string SQL_UnsupportedAuthenticationByProvider = @"The provider '{0}' does not support authentication '{1}'."; + internal const string SQL_CannotFindAuthProvider = @"Cannot find an authentication provider for '{0}'."; + internal const string SQL_CannotGetAuthProviderConfig = @"Failed to read the config section for authentication providers."; + internal const string SQL_ParameterCannotBeEmpty = @"Parameter '{0}' cannot be null or empty."; + internal const string SQL_AsyncOperationCompleted = @"The asynchronous operation has already completed."; + internal const string SQL_PendingBeginXXXExists = @"The command execution cannot proceed due to a pending asynchronous operation already in progress."; + internal const string SQL_NonXmlResult = @"Invalid command sent to ExecuteXmlReader. The command must return an Xml result."; + internal const string SQL_NotificationsRequireYukon = @"Notifications require SQL Server 9.0 or later."; + internal const string SQL_InvalidUdt3PartNameFormat = @"Invalid 3 part name format for UdtTypeName."; + internal const string SQL_InvalidParameterTypeNameFormat = @"Invalid 3 part name format for TypeName."; + internal const string SQL_InvalidParameterNameLength = @"The length of the parameter '{0}' exceeds the limit of 128 characters."; + internal const string SQL_PrecisionValueOutOfRange = @"Precision value '{0}' is either less than 0 or greater than the maximum allowed precision of 38."; + internal const string SQL_ScaleValueOutOfRange = @"Scale value '{0}' is either less than 0 or greater than the maximum allowed scale of 38."; + internal const string SQL_TimeScaleValueOutOfRange = @"Scale value '{0}' is either less than 0 or greater than the maximum allowed scale of 7."; + internal const string SQL_ParameterInvalidVariant = @"Parameter '{0}' exceeds the size limit for the sql_variant datatype."; + internal const string SQL_ParameterTypeNameRequired = @"The {0} type parameter '{1}' must have a valid type name."; + internal const string SQL_InvalidInternalPacketSize = @"Invalid internal packet size:"; + internal const string SQL_InvalidTDSVersion = @"The SQL Server instance returned an invalid or unsupported protocol version during login negotiation."; + internal const string SQL_InvalidTDSPacketSize = @"Invalid Packet Size."; + internal const string SQL_ParsingError = @"Internal connection fatal error."; + internal const string SQL_ParsingErrorWithState = @"Internal connection fatal error. Error state: {0}"; + internal const string SQL_ParsingErrorValue = @"Internal connection fatal error. Error state: {0}, Value: {1}"; + internal const string SQL_ParsingErrorOffset = @"Internal connection fatal error. Error state: {0}, Offset: {1}"; + internal const string SQL_ParsingErrorFeatureId = @"Internal connection fatal error. Error state: {0}, Feature Id: {1}"; + internal const string SQL_ParsingErrorToken = @"Internal connection fatal error. Error state: {0}, Token : {1}"; + internal const string SQL_ParsingErrorLength = @"Internal connection fatal error. Error state: {0}, Length: {1}"; + internal const string SQL_ParsingErrorStatus = @"Internal connection fatal error. Error state: {0}, Status: {1}"; + internal const string SQL_ParsingErrorAuthLibraryType = @"Internal connection fatal error. Error state: {0}, Authentication Library Type: {1}"; + internal const string SQL_ConnectionLockedForBcpEvent = @"The connection cannot be used because there is an ongoing operation that must be finished."; + internal const string SQL_SNIPacketAllocationFailure = @"Memory allocation for internal connection failed."; + internal const string SQL_SmallDateTimeOverflow = @"SqlDbType.SmallDateTime overflow. Value '{0}' is out of range. Must be between 1/1/1900 12:00:00 AM and 6/6/2079 11:59:59 PM."; + internal const string SQL_TimeOverflow = @"SqlDbType.Time overflow. Value '{0}' is out of range. Must be between 00:00:00.0000000 and 23:59:59.9999999."; + internal const string SQL_MoneyOverflow = @"SqlDbType.SmallMoney overflow. Value '{0}' is out of range. Must be between -214,748.3648 and 214,748.3647."; + internal const string SQL_CultureIdError = @"The Collation specified by SQL Server is not supported."; + internal const string SQL_OperationCancelled = @"Operation cancelled by user."; + internal const string SQL_SevereError = @"A severe error occurred on the current command. The results, if any, should be discarded."; + internal const string SQL_SSPIGenerateError = @"The target principal name is incorrect. Cannot generate SSPI context."; + internal const string SQL_InvalidSSPIPacketSize = @"Invalid SSPI packet size."; + internal const string SQL_SSPIInitializeError = @"Cannot initialize SSPI package."; + internal const string SQL_Timeout = @"Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."; + internal const string SQL_Timeout_PreLogin_Begin = @"Connection Timeout Expired. The timeout period elapsed at the start of the pre-login phase. This could be because of insufficient time provided for connection timeout."; + internal const string SQL_Timeout_PreLogin_InitializeConnection = @"Connection Timeout Expired. The timeout period elapsed while attempting to create and initialize a socket to the server. This could be either because the server was unreachable or unable to respond back in time."; + internal const string SQL_Timeout_PreLogin_SendHandshake = @"Connection Timeout Expired. The timeout period elapsed while making a pre-login handshake request. This could be because the server was unable to respond back in time."; + internal const string SQL_Timeout_PreLogin_ConsumeHandshake = @"Connection Timeout Expired. The timeout period elapsed while attempting to consume the pre-login handshake acknowledgement. This could be because the pre-login handshake failed or the server was unable to respond back in time."; + internal const string SQL_Timeout_Login_Begin = @"Connection Timeout Expired. The timeout period elapsed at the start of the login phase. This could be because of insufficient time provided for connection timeout."; + internal const string SQL_Timeout_Login_ProcessConnectionAuth = @"Connection Timeout Expired. The timeout period elapsed while attempting to authenticate the login. This could be because the server failed to authenticate the user or the server was unable to respond back in time."; + internal const string SQL_Timeout_PostLogin = @"Connection Timeout Expired. The timeout period elapsed during the post-login phase. The connection could have timed out while waiting for server to complete the login process and respond; Or it could have timed out while attempting to create multiple active connections."; + internal const string SQL_Timeout_FailoverInfo = @"This failure occurred while attempting to connect to the {0} server."; + internal const string SQL_Timeout_RoutingDestinationInfo = @"This failure occurred while attempting to connect to the routing destination. The duration spent while attempting to connect to the original server was - [Pre-Login] initialization={0}; handshake={1}; [Login] initialization={2}; authentication={3}; [Post-Login] complete={4}; "; + internal const string SQL_Duration_PreLogin_Begin = @"The duration spent while attempting to connect to this server was - [Pre-Login] initialization={0};"; + internal const string SQL_Duration_PreLoginHandshake = @"The duration spent while attempting to connect to this server was - [Pre-Login] initialization={0}; handshake={1}; "; + internal const string SQL_Duration_Login_Begin = @"The duration spent while attempting to connect to this server was - [Pre-Login] initialization={0}; handshake={1}; [Login] initialization={2}; "; + internal const string SQL_Duration_Login_ProcessConnectionAuth = @"The duration spent while attempting to connect to this server was - [Pre-Login] initialization={0}; handshake={1}; [Login] initialization={2}; authentication={3}; "; + internal const string SQL_Duration_PostLogin = @"The duration spent while attempting to connect to this server was - [Pre-Login] initialization={0}; handshake={1}; [Login] initialization={2}; authentication={3}; [Post-Login] complete={4}; "; + internal const string SQL_UserInstanceFailure = @"A user instance was requested in the connection string but the server specified does not support this option."; + internal const string SQL_InvalidServerCertificate = @"The server certificate failed application validation."; + internal const string SQL_ExceedsMaxDataLength = @"Specified data length {0} exceeds the allowed maximum length of {1}."; + internal const string SQL_InvalidRead = @"Invalid attempt to read when no data is present."; + internal const string SQL_NonBlobColumn = @"Invalid attempt to GetBytes on column '{0}'. The GetBytes function can only be used on columns of type Text, NText, or Image."; + internal const string SQL_NonCharColumn = @"Invalid attempt to GetChars on column '{0}'. The GetChars function can only be used on columns of type Text, NText, Xml, VarChar or NVarChar."; + internal const string SQL_StreamNotSupportOnColumnType = @"Invalid attempt to GetStream on column '{0}'. The GetStream function can only be used on columns of type Binary, Image, Udt or VarBinary."; + internal const string SQL_TextReaderNotSupportOnColumnType = @"Invalid attempt to GetTextReader on column '{0}'. The GetTextReader function can only be used on columns of type Char, NChar, NText, NVarChar, Text or VarChar."; + internal const string SQL_XmlReaderNotSupportOnColumnType = @"Invalid attempt to GetXmlReader on column '{0}'. The GetXmlReader function can only be used on columns of type Xml."; + internal const string SQL_InvalidBufferSizeOrIndex = @"Buffer offset '{1}' plus the bytes available '{0}' is greater than the length of the passed in buffer."; + internal const string SQL_InvalidDataLength = @"Data length '{0}' is less than 0."; + internal const string SQL_SqlResultSetClosed = @"Invalid attempt to call method {0} when SqlResultSet is closed."; + internal const string SQL_SqlResultSetClosed2 = @"Operation cannot be completed because the SqlResultSet is closed."; + internal const string SQL_SqlRecordReadOnly = @"'{0}' cannot be called when the record is read only."; + internal const string SQL_SqlRecordReadOnly2 = @"Operation cannot be completed because the record is read only."; + internal const string SQL_SqlResultSetRowDeleted = @"Invalid attempt to call method {0} when the current row is deleted"; + internal const string SQL_SqlResultSetRowDeleted2 = @"Operation cannot be completed because the current row is deleted"; + internal const string SQL_SqlResultSetCommandNotInSameConnection = @"Operation cannot be completed because the command that created the SqlResultSet has been dissociated from the original connection. SqlResultSet is closed."; + internal const string SQL_SqlResultSetNoAcceptableCursor = @"SqlResultSet could not be created for the given query with the desired options."; + internal const string SQL_SqlUpdatableRecordReadOnly = @"'{0}' cannot be called when the SqlDataRecord is read only."; + internal const string SQL_BulkLoadMappingInaccessible = @"The mapped collection is in use and cannot be accessed at this time;"; + internal const string SQL_BulkLoadMappingsNamesOrOrdinalsOnly = @"Mappings must be either all name or all ordinal based."; + internal const string SQL_BulkLoadCannotConvertValue = @"The given value{0} of type {1} from the data source cannot be converted to type {2} for Column {3} [{4}] Row {5}."; + internal const string SQL_BulkLoadCannotConvertValueWithoutRowNo = @"The given value{0} of type {1} from the data source cannot be converted to type {2} for Column {3} [{4}]."; + internal const string SQL_BulkLoadNonMatchingColumnMapping = @"The given ColumnMapping does not match up with any column in the source or destination."; + internal const string SQL_BulkLoadNonMatchingColumnName = @"The given ColumnName '{0}' does not match up with any column in data source."; + internal const string SQL_BulkLoadStringTooLong = @"String or binary data would be truncated in table '{0}', column '{1}'. Truncated value: '{2}'."; + internal const string SQL_BulkLoadInvalidTimeout = @"Timeout Value '{0}' is less than 0."; + internal const string SQL_BulkLoadInvalidVariantValue = @"Value cannot be converted to SqlVariant."; + internal const string SQL_BulkLoadExistingTransaction = @"Unexpected existing transaction."; + internal const string SQL_BulkLoadNoCollation = @"Failed to obtain column collation information for the destination table. If the table is not in the current database the name must be qualified using the database name (e.g. [mydb]..[mytable](e.g. [mydb]..[mytable]); this also applies to temporary-tables (e.g. #mytable would be specified as tempdb..#mytable)."; + internal const string SQL_BulkLoadConflictingTransactionOption = @"Must not specify SqlBulkCopyOption.UseInternalTransaction and pass an external Transaction at the same time."; + internal const string SQL_BulkLoadInvalidOperationInsideEvent = @"Function must not be called during event."; + internal const string SQL_BulkLoadMissingDestinationTable = @"The DestinationTableName property must be set before calling this method."; + internal const string SQL_BulkLoadInvalidDestinationTable = @"Cannot access destination table '{0}'."; + internal const string SQL_BulkLoadNotAllowDBNull = @"Column '{0}' does not allow DBNull.Value."; + internal const string Sql_BulkLoadLcidMismatch = @"The locale id '{0}' of the source column '{1}' and the locale id '{2}' of the destination column '{3}' do not match."; + internal const string SQL_BulkLoadPendingOperation = @"Attempt to invoke bulk copy on an object that has a pending operation."; + internal const string SQL_ConnectionDoomed = @"The requested operation cannot be completed because the connection has been broken."; + internal const string SQL_OpenResultCountExceeded = @"Open result count exceeded."; + internal const string GT_Disabled = @"Global Transactions are not enabled for this Azure SQL Database. Please contact Azure SQL Database support for assistance."; + internal const string GT_UnsupportedSysTxVersion = @"The currently loaded System.Transactions.dll does not support Global Transactions. Please upgrade to .NET Framework 4.6.1 or later."; + internal const string SQL_BatchedUpdatesNotAvailableOnContextConnection = @"Batching updates is not supported on the context connection."; + internal const string SQL_ContextAllowsLimitedKeywords = @"The only additional connection string keyword that may be used when requesting the context connection is the Type System Version keyword."; + internal const string SQL_ContextAllowsOnlyTypeSystem2005 = @"The context connection does not support Type System Version=SQL Server 2000."; + internal const string SQL_ContextConnectionIsInUse = @"The context connection is already in use."; + internal const string SQL_ContextUnavailableOutOfProc = @"The requested operation requires a SqlClr context, which is only available when running in the Sql Server process."; + internal const string SQL_ContextUnavailableWhileInProc = @"The requested operation requires a Sql Server execution thread. The current thread was started by user code or other non-Sql Server engine code."; + internal const string SQL_NestedTransactionScopesNotSupported = @"Nested TransactionScopes are not supported."; + internal const string SQL_NotAvailableOnContextConnection = @"The requested operation is not available on the context connection."; + internal const string SQL_NotificationsNotAvailableOnContextConnection = @"Notifications are not available on the context connection."; + internal const string SQL_UnexpectedSmiEvent = @"Unexpected server event: {0}."; + internal const string SQL_UserInstanceNotAvailableInProc = @"User instances are not allowed when running in the Sql Server process."; + internal const string SQL_ArgumentLengthMismatch = @"The length of '{0}' must match the length of '{1}'."; + internal const string SQL_InvalidSqlDbTypeWithOneAllowedType = @"The SqlDbType '{0}' is invalid for {1}. Only {2} is supported."; + internal const string SQL_PipeErrorRequiresSendEnd = @"An error occurred with a prior row sent to the SqlPipe. SendResultsEnd must be called before anything else can be sent."; + internal const string SQL_TooManyValues = @"Too many values."; + internal const string SQL_StreamWriteNotSupported = @"The Stream does not support writing."; + internal const string SQL_StreamReadNotSupported = @"The Stream does not support reading."; + internal const string SQL_StreamSeekNotSupported = @"The Stream does not support seeking."; + internal const string SQL_ExClientConnectionId = @"ClientConnectionId:{0}"; + internal const string SQL_ExErrorNumberStateClass = @"Error Number:{0},State:{1},Class:{2}"; + internal const string SQL_ExOriginalClientConnectionId = @"ClientConnectionId before routing:{0}"; + internal const string SQL_ExRoutingDestination = @"Routing Destination:{0}"; + internal const string SqlMisc_NullString = @"Null"; + internal const string SqlMisc_MessageString = @"Message"; + internal const string SqlMisc_ArithOverflowMessage = @"Arithmetic Overflow."; + internal const string SqlMisc_DivideByZeroMessage = @"Divide by zero error encountered."; + internal const string SqlMisc_NullValueMessage = @"Data is Null. This method or property cannot be called on Null values."; + internal const string SqlMisc_TruncationMessage = @"Numeric arithmetic causes truncation."; + internal const string SqlMisc_DateTimeOverflowMessage = @"SqlDateTime overflow. Must be between 1/1/1753 12:00:00 AM and 12/31/9999 11:59:59 PM."; + internal const string SqlMisc_ConcatDiffCollationMessage = @"Two strings to be concatenated have different collation."; + internal const string SqlMisc_CompareDiffCollationMessage = @"Two strings to be compared have different collation."; + internal const string SqlMisc_InvalidFlagMessage = @"Invalid flag value."; + internal const string SqlMisc_NumeToDecOverflowMessage = @"Conversion from SqlDecimal to Decimal overflows."; + internal const string SqlMisc_ConversionOverflowMessage = @"Conversion overflows."; + internal const string SqlMisc_InvalidDateTimeMessage = @"Invalid SqlDateTime."; + internal const string SqlMisc_TimeZoneSpecifiedMessage = @"A time zone was specified. SqlDateTime does not support time zones."; + internal const string SqlMisc_InvalidArraySizeMessage = @"Invalid array size."; + internal const string SqlMisc_InvalidPrecScaleMessage = @"Invalid numeric precision/scale."; + internal const string SqlMisc_FormatMessage = @"The input wasn't in a correct format."; + internal const string SqlMisc_SqlTypeMessage = @"SqlType error."; + internal const string SqlMisc_LenTooLargeMessage = @"The SqlBytes and SqlChars don't support length of more than 2GB in this version."; + internal const string SqlMisc_StreamErrorMessage = @"An error occurred while reading."; + internal const string SqlMisc_StreamClosedMessage = @"Stream has been closed or disposed."; + internal const string SqlMisc_NoBufferMessage = @"There is no buffer. Read or write operation failed."; + internal const string SqlMisc_SetNonZeroLenOnNullMessage = @"Cannot set to non-zero length, because current value is Null."; + internal const string SqlMisc_BufferInsufficientMessage = @"The buffer is insufficient. Read or write operation failed."; + internal const string SqlMisc_WriteNonZeroOffsetOnNullMessage = @"Cannot write to non-zero offset, because current value is Null."; + internal const string SqlMisc_WriteOffsetLargerThanLenMessage = @"Cannot write from an offset that is larger than current length. It would leave uninitialized data in the buffer."; + internal const string SqlMisc_TruncationMaxDataMessage = @"Data returned is larger than 2Gb in size. Use SequentialAccess command behavior in order to get all of the data."; + internal const string SqlMisc_InvalidFirstDayMessage = @"Argument to GetDayOfWeek must be integer between 1 and 7."; + internal const string SqlMisc_NotFilledMessage = @"SQL Type has not been loaded with data."; + internal const string SqlMisc_AlreadyFilledMessage = @"SQL Type has already been loaded with data."; + internal const string SqlMisc_ClosedXmlReaderMessage = @"Invalid attempt to access a closed XmlReader."; + internal const string SqlMisc_InvalidOpStreamClosed = @"Invalid attempt to call {0} when the stream is closed."; + internal const string SqlMisc_InvalidOpStreamNonWritable = @"Invalid attempt to call {0} when the stream non-writable."; + internal const string SqlMisc_InvalidOpStreamNonReadable = @"Invalid attempt to call {0} when the stream non-readable."; + internal const string SqlMisc_InvalidOpStreamNonSeekable = @"Invalid attempt to call {0} when the stream is non-seekable."; + internal const string SqlMisc_SubclassMustOverride = @"Subclass did not override a required method."; + internal const string SQL_CannotCreateNormalizer = @"Cannot create normalizer for '{0}'."; + internal const string Sql_InternalError = @"Internal Error"; + internal const string Sql_NullCommandText = @"Command parameter must have a non null and non empty command text."; + internal const string Sql_MismatchedMetaDataDirectionArrayLengths = @"MetaData parameter array must have length equivalent to ParameterDirection array argument."; + internal const string ADP_AdapterMappingExceptionMessage = @"Data adapter mapping error."; + internal const string ADP_DataAdapterExceptionMessage = @"Data adapter error."; + internal const string ADP_DBConcurrencyExceptionMessage = @"DB concurrency violation."; + internal const string ADP_OperationAborted = @"Operation aborted."; + internal const string ADP_OperationAbortedExceptionMessage = @"Operation aborted due to an exception (see InnerException for details)."; + internal const string DataAdapter_AcceptChangesDuringFill = @"Whether or not Fill will call DataRow.AcceptChanges."; + internal const string DataAdapter_AcceptChangesDuringUpdate = @"Whether or not Update will call DataRow.AcceptChanges."; + internal const string DataAdapter_ContinueUpdateOnError = @"Whether or not to continue to the next DataRow when the Update events, RowUpdating and RowUpdated, Status is UpdateStatus.ErrorsOccurred."; + internal const string DataAdapter_FillLoadOption = @"How the adapter fills the DataTable from the DataReader."; + internal const string DataAdapter_MissingMappingAction = @"The action taken when a table or column in the TableMappings is missing."; + internal const string DataAdapter_MissingSchemaAction = @"The action taken when a table or column in the DataSet is missing."; + internal const string DataAdapter_TableMappings = @"How to map source table to DataSet table."; + internal const string DataAdapter_FillError = @"Event triggered when a recoverable error occurs during Fill."; + internal const string DataAdapter_ReturnProviderSpecificTypes = @"Should Fill return provider specific values or common CLSCompliant values."; + internal const string DataColumnMapping_DataSetColumn = @"DataColumn.ColumnName"; + internal const string DataColumnMapping_SourceColumn = @"Source column name - case sensitive."; + internal const string DataColumnMappings_Count = @"The number of items in the collection"; + internal const string DataColumnMappings_Item = @"The specified DataColumnMapping object."; + internal const string DataTableMapping_ColumnMappings = @"Individual columns mappings when this table mapping is matched."; + internal const string DataTableMapping_DataSetTable = @"DataTable.TableName"; + internal const string DataTableMapping_SourceTable = @"The DataTableMapping source table name. This name is case sensitive."; + internal const string DataTableMappings_Count = @"The number of items in the collection"; + internal const string DataTableMappings_Item = @"The specified DataTableMapping object"; + internal const string DbDataAdapter_DeleteCommand = @"Used during Update for deleted rows in DataSet."; + internal const string DbDataAdapter_InsertCommand = @"Used during Update for new rows in DataSet."; + internal const string DbDataAdapter_SelectCommand = @"Used during Fill/FillSchema."; + internal const string DbDataAdapter_UpdateCommand = @"Used during Update for modified rows in DataSet."; + internal const string DbDataAdapter_RowUpdated = @"Event triggered before every DataRow during Update."; + internal const string DbDataAdapter_RowUpdating = @"Event triggered after every DataRow during Update."; + internal const string DbDataAdapter_UpdateBatchSize = @"Number of rows to batch together before executing against the data source."; + internal const string DbTable_Connection = @"Connection used if the the Select/Insert/Update/DeleteCommands do not already have a connection."; + internal const string DbTable_DeleteCommand = @"Used during Update for deleted rows in the DataTable."; + internal const string DbTable_InsertCommand = @"Used during Update for new rows in the DataTable."; + internal const string DbTable_SelectCommand = @"Used during Fill."; + internal const string DbTable_UpdateCommand = @"Used during Update for modified rows in the DataTable."; + internal const string DbTable_ReturnProviderSpecificTypes = @"Should Fill return provider specific values or common CLSCompliant values."; + internal const string DbTable_TableMapping = @"How to map source table to DataTable."; + internal const string DbTable_ConflictDetection = @"How are the Insert/Update/DeleteCommands generated when not set by the user."; + internal const string DbTable_UpdateBatchSize = @"Number of rows to batch together before executing against the data source."; + internal const string DbConnectionString_ConnectionString = @"The connection string used to connect to the Data Source."; + internal const string DbConnectionString_Driver = @"The name of the ODBC Driver to use when connecting to the Data Source."; + internal const string DbConnectionString_DSN = @"The DSN to use when connecting to the Data Source."; + internal const string DbConnectionString_AdoNetPooler = @"When true, indicates that managed connection pooling should be used."; + internal const string DbConnectionString_FileName = @"The UDL file to use when connecting to the Data Source."; + internal const string DbConnectionString_OleDbServices = @"Specifies which OLE DB Services to enable or disable with the OleDb Provider."; + internal const string DbConnectionString_Provider = @"The name of the OLE DB Provider to use when connecting to the Data Source."; + internal const string DbConnectionString_ApplicationName = @"The name of the application."; + internal const string DbConnectionString_AsynchronousProcessing = @"When true, enables usage of the Asynchronous functionality in the .NET Framework Data Provider."; + internal const string DbConnectionString_AttachDBFilename = @"The name of the primary file, including the full path name, of an attachable database."; + internal const string DbConnectionString_ConnectTimeout = @"The length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error."; + internal const string DbConnectionString_ConnectionReset = @"When true, indicates the connection state is reset when removed from the pool."; + internal const string DbConnectionString_ContextConnection = @"When true, indicates the connection should be from the Sql Server context. Available only when running in the Sql Server process."; + internal const string DbConnectionString_CurrentLanguage = @"The SQL Server Language record name."; + internal const string DbConnectionString_DataSource = @"Indicates the name of the data source to connect to."; + internal const string DbConnectionString_Encrypt = @"When true, SQL Server uses SSL encryption for all data sent between the client and server if the server has a certificate installed."; + internal const string DbConnectionString_Enlist = @"Sessions in a Component Services (or MTS, if you are using Microsoft Windows NT) environment should automatically be enlisted in a global transaction where required."; + internal const string DbConnectionString_InitialCatalog = @"The name of the initial catalog or database in the data source."; + internal const string DbConnectionString_FailoverPartner = @"The name or network address of the instance of SQL Server that acts as a failover partner."; + internal const string DbConnectionString_IntegratedSecurity = @"Whether the connection is to be a secure connection or not."; + internal const string DbConnectionString_LoadBalanceTimeout = @"The minimum amount of time (in seconds) for this connection to live in the pool before being destroyed."; + internal const string DbConnectionString_MaxPoolSize = @"The maximum number of connections allowed in the pool."; + internal const string DbConnectionString_MinPoolSize = @"The minimum number of connections allowed in the pool."; + internal const string DbConnectionString_MultipleActiveResultSets = @"When true, multiple result sets can be returned and read from one connection."; + internal const string DbConnectionString_MultiSubnetFailover = @"If your application is connecting to a high-availability, disaster recovery (AlwaysOn) availability group (AG) on different subnets, MultiSubnetFailover=Yes configures SqlConnection to provide faster detection of and connection to the (currently) active server."; + internal const string DbConnectionString_TransparentNetworkIPResolution = @"If your application connects to different networks, TransparentNetworkIPResolution=Yes configures SqlConnection to provide transparent connection resolution to the currently active server, independently of the network IP topology."; + internal const string DbConnectionString_NetworkLibrary = @"The network library used to establish a connection to an instance of SQL Server."; + internal const string DbConnectionString_PacketSize = @"Size in bytes of the network packets used to communicate with an instance of SQL Server."; + internal const string DbConnectionString_Password = @"Indicates the password to be used when connecting to the data source."; + internal const string DbConnectionString_PersistSecurityInfo = @"When false, security-sensitive information, such as the password, is not returned as part of the connection if the connection is open or has ever been in an open state."; + internal const string DbConnectionString_Pooling = @"When true, the connection object is drawn from the appropriate pool, or if necessary, is created and added to the appropriate pool."; + internal const string DbConnectionString_Replication = @"Used by SQL Server in Replication."; + internal const string DbConnectionString_TransactionBinding = @"Indicates binding behavior of connection to a System.Transactions Transaction when enlisted."; + internal const string DbConnectionString_TrustServerCertificate = @"When true (and encrypt=true), SQL Server uses SSL encryption for all data sent between the client and server without validating the server certificate."; + internal const string DbConnectionString_TypeSystemVersion = @"Indicates which server type system the provider will expose through the DataReader."; + internal const string DbConnectionString_UserID = @"Indicates the user ID to be used when connecting to the data source."; + internal const string DbConnectionString_UserInstance = @"Indicates whether the connection will be re-directed to connect to an instance of SQL Server running under the user's account."; + internal const string DbConnectionString_WorkstationID = @"The name of the workstation connecting to SQL Server."; + internal const string DbConnectionString_ApplicationIntent = @"Declares the application workload type when connecting to a server."; + internal const string DbConnectionString_ConnectRetryCount = @"Number of attempts to restore connection."; + internal const string DbConnectionString_ConnectRetryInterval = @"Delay between attempts to restore connection."; + internal const string DbConnectionString_Authentication = @"Specifies the method of authenticating with SQL Server."; + internal const string DbConnectionString_Certificate = @"Specified client certificate for authenticating with SQL Server. "; + internal const string OdbcConnection_ConnectionString = @"Information used to connect to a Data Source."; + internal const string OdbcConnection_ConnectionTimeout = @"Current connection timeout value, not settable in the ConnectionString."; + internal const string OdbcConnection_Database = @"Current data source catalog value, 'Database=X' in the connection string."; + internal const string OdbcConnection_DataSource = @"Current data source, 'Server=X' in the connection string."; + internal const string OdbcConnection_Driver = @"Current ODBC driver."; + internal const string OdbcConnection_ServerVersion = @"Version of the product accessed by the ODBC Driver."; + internal const string OleDbConnection_ConnectionString = @"Information used to connect to a Data Source."; + internal const string OleDbConnection_ConnectionTimeout = @"Current connection timeout value, 'Connect Timeout=X' in the ConnectionString."; + internal const string OleDbConnection_Database = @"Current data source catalog value, 'Initial Catalog=X' in the connection string."; + internal const string OleDbConnection_DataSource = @"Current data source, 'Data Source=X' in the connection string."; + internal const string OleDbConnection_Provider = @"Current OLE DB provider ProgID, 'Provider=X' in the connection string."; + internal const string OleDbConnection_ServerVersion = @"Version of the product accessed by the OLE DB Provider."; + internal const string SqlConnection_AccessToken = @"Access token to use for authentication."; + internal const string SqlConnection_Asynchronous = @"State of connection, synchronous or asynchronous. 'Asynchronous Processing=x' in the connection string."; + internal const string SqlConnection_Replication = @"Information used to connect for replication."; + internal const string SqlConnection_ConnectionString = @"Information used to connect to a DataSource, such as 'Data Source=x;Initial Catalog=x;Integrated Security=SSPI'."; + internal const string SqlConnection_ConnectionTimeout = @"Current connection timeout value, 'Connect Timeout=X' in the ConnectionString."; + internal const string SqlConnection_Database = @"Current SQL Server database, 'Initial Catalog=X' in the connection string."; + internal const string SqlConnection_DataSource = @"Current SqlServer that the connection is opened to, 'Data Source=X' in the connection string."; + internal const string SqlConnection_PacketSize = @"Network packet size, 'Packet Size=x' in the connection string."; + internal const string SqlConnection_ServerVersion = @"Version of the SQL Server accessed by the SqlConnection."; + internal const string SqlConnection_WorkstationId = @"Workstation Id, 'Workstation ID=x' in the connection string."; + internal const string SqlConnection_StatisticsEnabled = @"Collect statistics for this connection."; + internal const string SqlConnection_CustomColumnEncryptionKeyStoreProviders = @"Custom column encryption key store providers."; + internal const string SqlConnection_ClientConnectionId = @"A guid to represent the physical connection."; + internal const string SqlConnection_Credential = @"User Id and secure password to use for authentication."; + internal const string DbConnection_InfoMessage = @"Event triggered when messages arrive from the DataSource."; + internal const string DbCommand_CommandText = @"Command text to execute."; + internal const string DbCommand_CommandType = @"How to interpret the CommandText."; + internal const string DbCommand_Connection = @"Connection used by the command."; + internal const string DbCommand_Parameters = @"The parameters collection."; + internal const string DbCommand_Transaction = @"The transaction used by the command."; + internal const string DbCommand_UpdatedRowSource = @"When used by a DataAdapter.Update, how command results are applied to the current DataRow."; + internal const string DbCommand_StatementCompleted = @"When records are affected by a given statement by the execution of the command."; + internal const string SqlCommand_Notification = @"Notification values used by Microsoft SQL Server."; + internal const string SqlCommand_NotificationAutoEnlist = @"Automatic enlistment in notifications used by Microsoft SQL Server."; + internal const string DbCommandBuilder_ConflictOption = @"How the where clause is auto-generated for the Update and Delete commands when not specified by the user."; + internal const string DbCommandBuilder_CatalogLocation = @"Indicates the position of the catalog name in a qualified table name in a text command."; + internal const string DbCommandBuilder_CatalogSeparator = @"The character that separates the catalog name from the rest of the identifier in a text command."; + internal const string DbCommandBuilder_SchemaSeparator = @"The character that separates the schema name from the rest of the identifier in a text command."; + internal const string DbCommandBuilder_QuotePrefix = @"The prefix string wrapped around sql objects."; + internal const string DbCommandBuilder_QuoteSuffix = @"The suffix string wrapped around sql objects."; + internal const string DbCommandBuilder_DataAdapter = @"The DataAdapter for which to automatically generate Commands."; + internal const string DbCommandBuilder_SchemaLocation = @"Use schema from DataTable or the SelectCommand."; + internal const string DbCommandBuilder_SetAllValues = @"How the set clause is auto-generated for the Update command when not specified by the user."; + internal const string OdbcCommandBuilder_DataAdapter = @"The DataAdapter for which to automatically generate OdbcCommands"; + internal const string OdbcCommandBuilder_QuotePrefix = @"The character used in a text command as the opening quote for quoting identifiers that contain special characters."; + internal const string OdbcCommandBuilder_QuoteSuffix = @"The character used in a text command as the closing quote for quoting identifiers that contain special characters."; + internal const string OleDbCommandBuilder_DataAdapter = @"The DataAdapter for which to automatically generate OleDbCommands"; + internal const string OleDbCommandBuilder_DecimalSeparator = @"The decimal separator used in numeric literals."; + internal const string OleDbCommandBuilder_QuotePrefix = @"The prefix string wrapped around sql objects"; + internal const string OleDbCommandBuilder_QuoteSuffix = @"The suffix string wrapped around sql objects"; + internal const string SqlCommandBuilder_DataAdapter = @"The DataAdapter for which to automatically generate SqlCommands"; + internal const string SqlCommandBuilder_DecimalSeparator = @"The decimal separator used in numeric literals."; + internal const string SqlCommandBuilder_QuotePrefix = @"The character used in a text command as the opening quote for quoting identifiers that contain special characters."; + internal const string SqlCommandBuilder_QuoteSuffix = @"The character used in a text command as the closing quote for quoting identifiers that contain special characters."; + internal const string DbDataParameter_Precision = @"Only necessary to set for decimal and numeric parameters when using with Prepare, FillSchema and CommandBuilder scenarios."; + internal const string DbDataParameter_Scale = @"Only necessary to set for decimal and numeric parameters when using with Prepare, FillSchema and CommandBuilder scenarios."; + internal const string OdbcParameter_OdbcType = @"The parameter native type."; + internal const string OleDbParameter_OleDbType = @"The parameter native type."; + internal const string SqlParameter_ParameterName = @"Name of the parameter, like '@p1'"; + internal const string SqlParameter_SqlDbType = @"The parameter native type."; + internal const string SqlParameter_TypeName = @"The server's name for the type."; + internal const string SqlParameter_Offset = @"Offset in variable length data types."; + internal const string SqlParameter_XmlSchemaCollectionDatabase = @"XmlSchemaCollectionDatabase"; + internal const string SqlParameter_XmlSchemaCollectionOwningSchema = @"XmlSchemaCollectionOwningSchema"; + internal const string SqlParameter_XmlSchemaCollectionName = @"XmlSchemaCollectionName"; + internal const string SqlParameter_UnsupportedTVPOutputParameter = @"ParameterDirection '{0}' specified for parameter '{1}' is not supported. Table-valued parameters only support ParameterDirection.Input."; + internal const string SqlParameter_DBNullNotSupportedForTVP = @"DBNull value for parameter '{0}' is not supported. Table-valued parameters cannot be DBNull."; + internal const string SqlParameter_InvalidTableDerivedPrecisionForTvp = @"Precision '{0}' required to send all values in column '{1}' exceeds the maximum supported precision '{2}'. The values must all fit in a single precision."; + internal const string SqlParameter_UnexpectedTypeNameForNonStruct = @"TypeName specified for parameter '{0}'. TypeName must only be set for Structured parameters."; + internal const string MetaType_SingleValuedStructNotSupported = @"SqlDbType.Structured type is only supported for multiple valued types."; + internal const string NullSchemaTableDataTypeNotSupported = @"DateType column for field '{0}' in schema table is null. DataType must be non-null."; + internal const string InvalidSchemaTableOrdinals = @"Invalid column ordinals in schema table. ColumnOrdinals, if present, must not have duplicates or gaps."; + internal const string SQL_EnumeratedRecordMetaDataChanged = @"Metadata for field '{0}' of record '{1}' did not match the original record's metadata."; + internal const string SQL_EnumeratedRecordFieldCountChanged = @"Number of fields in record '{0}' does not match the number in the original record."; + internal const string SQLUDT_MaxByteSizeValue = @"range: 0-8000"; + internal const string SQLUDT_Unexpected = @"unexpected error encountered in SqlClient data provider. {0}"; + internal const string SQLUDT_InvalidDbId = @"Unable to get Type Info for {0},{1}"; + internal const string SQLUDT_CantLoadAssembly = @"The provider has failed to load the following assembly: {0}"; + internal const string SQLUDT_InvalidUdtTypeName = @"UdtTypeName property must be set for UDT parameters."; + internal const string SQLUDT_UnexpectedUdtTypeName = @"UdtTypeName property must be set only for UDT parameters."; + internal const string SQLUDT_InvalidSqlType = @"Specified type is not registered on the target server.{0}."; + internal const string SQLUDT_InWhereClause = @"UDT parameters not permitted in the where clause unless part of the primary key."; + internal const string SqlUdt_InvalidUdtMessage = @"'{0}' is an invalid user defined type, reason: {1}."; + internal const string SqlUdtReason_MultipleSerFormats = @"supports both in-memory and user-defined formats"; + internal const string SqlUdtReason_CannotSupportNative = @"Native format can't be supported."; + internal const string SqlUdtReason_CannotSupportUserDefined = @"does not implement IBinarySerialize"; + internal const string SqlUdtReason_NotSerializable = @"not serializable"; + internal const string SqlUdtReason_NoPublicConstructors = @"no public constructors"; + internal const string SqlUdtReason_NotNullable = @"does not implement INullable"; + internal const string SqlUdtReason_NoPublicConstructor = @"does not have a public constructor"; + internal const string SqlUdtReason_NoUdtAttribute = @"no UDT attribute"; + internal const string SqlUdtReason_MaplessNotYetSupported = @"Serialization without mapping is not yet supported."; + internal const string SqlUdtReason_ParseMethodMissing = @"'public static x Parse(System.Data.SqlTypes.SqlString)' method is missing"; + internal const string SqlUdtReason_ToStringMethodMissing = @"'public override string ToString()' method is missing"; + internal const string SqlUdtReason_NullPropertyMissing = @"'public static x Null { get; }' method is missing"; + internal const string SqlUdtReason_NativeFormatNoFieldSupport = @"Native format does not support fields (directly or through another field) of type '{0}'"; + internal const string SqlUdtReason_TypeNotPublic = @"Type is not public"; + internal const string SqlUdtReason_NativeUdtNotSequentialLayout = @"Native UDT not sequential layout due to type '{0}'"; + internal const string SqlUdtReason_NativeUdtMaxByteSize = @"Native UDT specifies a max byte size"; + internal const string SqlUdtReason_NonSerializableField = @"field '{0}' is marked non-serialized"; + internal const string SqlUdtReason_NativeFormatExplictLayoutNotAllowed = @"The type of field '{0}' is marked as explicit layout which is not allowed in Native format"; + internal const string SqlUdtReason_MultivaluedAssemblyId = @"Multiple valued assembly references must have a nonzero Assembly Id."; + internal const string SQLTVP_TableTypeCanOnlyBeParameter = @"Structured, multiple-valued types can only be used for parameters, and cannot be nested within another type."; + internal const string SqlFileStream_InvalidPath = @"The path name is not valid."; + internal const string SqlFileStream_InvalidParameter = @"An invalid parameter was passed to the function."; + internal const string SqlFileStream_FileAlreadyInTransaction = @"The process cannot access the file specified because it has been opened in another transaction."; + internal const string SqlFileStream_PathNotValidDiskResource = @"The path name is invalid or does not point to a disk file."; + internal const string SqlDelegatedTransaction_PromotionFailed = @"Failure while attempting to promote transaction."; + internal const string SqlDependency_SqlDependency = @"Dependency object used to receive query notifications."; + internal const string SqlDependency_HasChanges = @"Property to indicate if this dependency is invalid."; + internal const string SqlDependency_Id = @"A string that uniquely identifies this dependency object."; + internal const string SqlDependency_OnChange = @"Event that can be used to subscribe for change notifications."; + internal const string SqlDependency_AddCommandDependency = @"To add a command to existing dependency object."; + internal const string SqlDependency_Duplicate = @"Command is already associated with another dependency object. Can not overwrite."; + internal const string SQLNotify_AlreadyHasCommand = @"This SqlCommand object is already associated with another SqlDependency object."; + internal const string SqlNotify_SqlDepCannotBeCreatedInProc = @"SqlDependency object cannot be created when running inside the SQL Server process."; + internal const string SqlDependency_DatabaseBrokerDisabled = @"The SQL Server Service Broker for the current database is not enabled, and as a result query notifications are not supported. Please enable the Service Broker for this database if you wish to use notifications."; + internal const string SqlDependency_DefaultOptionsButNoStart = @"When using SqlDependency without providing an options value, SqlDependency.Start() must be called prior to execution of a command added to the SqlDependency instance."; + internal const string SqlDependency_EventNoDuplicate = @"SqlDependency.OnChange does not support multiple event registrations for the same delegate."; + internal const string SqlDependency_DuplicateStart = @"SqlDependency does not support calling Start() with different connection strings having the same server, user, and database in the same app domain."; + internal const string SqlDependency_IdMismatch = @"No SqlDependency exists for the key."; + internal const string SqlDependency_NoMatchingServerStart = @"When using SqlDependency without providing an options value, SqlDependency.Start() must be called for each server that is being executed against."; + internal const string SqlDependency_NoMatchingServerDatabaseStart = @"SqlDependency.Start has been called for the server the command is executing against more than once, but there is no matching server/user/database Start() call for current command."; + internal const string SqlDependency_InvalidTimeout = @"Timeout specified is invalid. Timeout cannot be < 0."; + internal const string SQLNotify_ErrorFormat = @"Notification Error. Type={0}, Info={1}, Source={2}."; + internal const string SqlMetaData_NoMetadata = @"GetMetaData is not valid for this SqlDbType."; + internal const string SqlMetaData_InvalidSqlDbTypeForConstructorFormat = @"The dbType {0} is invalid for this constructor."; + internal const string SqlMetaData_NameTooLong = @"The name is too long."; + internal const string SqlMetaData_SpecifyBothSortOrderAndOrdinal = @"The sort order and ordinal must either both be specified, or neither should be specified (SortOrder.Unspecified and -1). The values given were: order = {0}, ordinal = {1}."; + internal const string SqlProvider_InvalidDataColumnType = @"The type of column '{0}' is not supported. The type is '{1}'"; + internal const string SqlProvider_InvalidDataColumnMaxLength = @"The size of column '{0}' is not supported. The size is {1}."; + internal const string SqlProvider_NotEnoughColumnsInStructuredType = @"There are not enough fields in the Structured type. Structured types must have at least one field."; + internal const string SqlProvider_DuplicateSortOrdinal = @"The sort ordinal {0} was specified twice."; + internal const string SqlProvider_MissingSortOrdinal = @"The sort ordinal {0} was not specified."; + internal const string SqlProvider_SortOrdinalGreaterThanFieldCount = @"The sort ordinal {0} on field {1} exceeds the total number of fields."; + internal const string IEnumerableOfSqlDataRecordHasNoRows = @"There are no records in the SqlDataRecord enumeration. To send a table-valued parameter with no rows, use a null reference for the value instead."; + internal const string SqlPipe_CommandHookedUpToNonContextConnection = @"SqlPipe does not support executing a command with a connection that is not a context connection."; + internal const string SqlPipe_MessageTooLong = @"Message length {0} exceeds maximum length supported of 4000."; + internal const string SqlPipe_IsBusy = @"Could not use the pipe while it is busy with another operation."; + internal const string SqlPipe_AlreadyHasAnOpenResultSet = @"A result set is currently being sent to the pipe. End the current result set before calling {0}."; + internal const string SqlPipe_DoesNotHaveAnOpenResultSet = @"Result set has not been initiated. Call SendResultSetStart before calling {0}."; + internal const string SNI_PN0 = @"HTTP Provider"; + internal const string SNI_PN1 = @"Named Pipes Provider"; + internal const string SNI_PN2 = @"Session Provider"; + internal const string SNI_PN3 = @"Sign Provider"; + internal const string SNI_PN4 = @"Shared Memory Provider"; + internal const string SNI_PN5 = @"SMux Provider"; + internal const string SNI_PN6 = @"SSL Provider"; + internal const string SNI_PN7 = @"TCP Provider"; + internal const string SNI_PN8 = @"VIA Provider"; + internal const string SNI_PN9 = @"CTAIP Provider"; + internal const string SNI_PN10 = @""; + internal const string SNI_PN11 = @"SQL Network Interfaces"; + internal const string SNI_ERROR_1 = @"I/O Error detected in read/write operation"; + internal const string SNI_ERROR_2 = @"Connection was terminated"; + internal const string SNI_ERROR_3 = @"Asynchronous operations not supported"; + internal const string SNI_ERROR_4 = @""; + internal const string SNI_ERROR_5 = @"Invalid parameter(s) found"; + internal const string SNI_ERROR_6 = @"Unsupported protocol specified"; + internal const string SNI_ERROR_7 = @"Invalid connection found when setting up new session protocol"; + internal const string SNI_ERROR_8 = @"Protocol not supported"; + internal const string SNI_ERROR_9 = @"Associating port with I/O completion mechanism failed"; + internal const string SNI_ERROR_10 = @""; + internal const string SNI_ERROR_11 = @"Timeout error"; + internal const string SNI_ERROR_12 = @"No server name supplied"; + internal const string SNI_ERROR_13 = @"TerminateListener() has been called"; + internal const string SNI_ERROR_14 = @"Win9x not supported"; + internal const string SNI_ERROR_15 = @"Function not supported"; + internal const string SNI_ERROR_16 = @"Shared-Memory heap error"; + internal const string SNI_ERROR_17 = @"Cannot find an ip/ipv6 type address to connect"; + internal const string SNI_ERROR_18 = @"Connection has been closed by peer"; + internal const string SNI_ERROR_19 = @"Physical connection is not usable"; + internal const string SNI_ERROR_20 = @"Connection has been closed"; + internal const string SNI_ERROR_21 = @"Encryption is enforced but there is no valid certificate"; + internal const string SNI_ERROR_22 = @"Couldn't load library"; + internal const string SNI_ERROR_23 = @"Cannot open a new thread in server process"; + internal const string SNI_ERROR_24 = @"Cannot post event to completion port"; + internal const string SNI_ERROR_25 = @"Connection string is not valid"; + internal const string SNI_ERROR_26 = @"Error Locating Server/Instance Specified"; + internal const string SNI_ERROR_27 = @"Error getting enabled protocols list from registry"; + internal const string SNI_ERROR_28 = @"Server doesn't support requested protocol"; + internal const string SNI_ERROR_29 = @"Shared Memory is not supported for clustered server connectivity"; + internal const string SNI_ERROR_30 = @"Invalid attempt bind to shared memory segment"; + internal const string SNI_ERROR_31 = @"Encryption(ssl/tls) handshake failed"; + internal const string SNI_ERROR_32 = @"Packet size too large for SSL Encrypt/Decrypt operations"; + internal const string SNI_ERROR_33 = @"SSRP error"; + internal const string SNI_ERROR_34 = @"Could not connect to the Shared Memory pipe"; + internal const string SNI_ERROR_35 = @"An internal exception was caught"; + internal const string SNI_ERROR_36 = @"The Shared Memory dll used to connect to SQL Server 2000 was not found"; + internal const string SNI_ERROR_37 = @"The SQL Server 2000 Shared Memory client dll appears to be invalid/corrupted"; + internal const string SNI_ERROR_38 = @"Cannot open a Shared Memory connection to SQL Server 2000"; + internal const string SNI_ERROR_39 = @"Shared memory connectivity to SQL Server 2000 is either disabled or not available on this machine"; + internal const string SNI_ERROR_40 = @"Could not open a connection to SQL Server"; + internal const string SNI_ERROR_41 = @"Cannot open a Shared Memory connection to a remote SQL server"; + internal const string SNI_ERROR_42 = @"Could not establish dedicated administrator connection (DAC) on default port. Make sure that DAC is enabled"; + internal const string SNI_ERROR_43 = @"An error occurred while obtaining the dedicated administrator connection (DAC) port. Make sure that SQL Browser is running, or check the error log for the port number"; + internal const string SNI_ERROR_44 = @"Could not compose Service Principal Name (SPN) for Windows Integrated Authentication. Possible causes are server(s) incorrectly specified to connection API calls, Domain Name System (DNS) lookup failure or memory shortage"; + internal const string SNI_ERROR_47 = @"Connecting with the MultiSubnetFailover connection option to a SQL Server instance configured with more than 64 IP addresses is not supported."; + internal const string SNI_ERROR_48 = @"Connecting to a named SQL Server instance using the MultiSubnetFailover connection option is not supported."; + internal const string SNI_ERROR_49 = @"Connecting to a SQL Server instance using the MultiSubnetFailover connection option is only supported when using the TCP protocol."; + internal const string SNI_ERROR_50 = @"Local Database Runtime error occurred. "; + internal const string SNI_ERROR_51 = @"An instance name was not specified while connecting to a Local Database Runtime. Specify an instance name in the format (localdb)\instance_name."; + internal const string SNI_ERROR_52 = @"Unable to locate a Local Database Runtime installation. Verify that SQL Server Express is properly installed and that the Local Database Runtime feature is enabled."; + internal const string SNI_ERROR_53 = @"Invalid Local Database Runtime registry configuration found. Verify that SQL Server Express is properly installed."; + internal const string SNI_ERROR_54 = @"Unable to locate the registry entry for SQLUserInstance.dll file path. Verify that the Local Database Runtime feature of SQL Server Express is properly installed."; + internal const string SNI_ERROR_55 = @"Registry value contains an invalid SQLUserInstance.dll file path. Verify that the Local Database Runtime feature of SQL Server Express is properly installed."; + internal const string SNI_ERROR_56 = @"Unable to load the SQLUserInstance.dll from the location specified in the registry. Verify that the Local Database Runtime feature of SQL Server Express is properly installed."; + internal const string SNI_ERROR_57 = @"Invalid SQLUserInstance.dll found at the location specified in the registry. Verify that the Local Database Runtime feature of SQL Server Express is properly installed."; + internal const string Snix_Connect = @"A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections."; + internal const string Snix_PreLoginBeforeSuccessfullWrite = @"The client was unable to establish a connection because of an error during connection initialization process before login. Possible causes include the following: the client tried to connect to an unsupported version of SQL Server; the server was too busy to accept new connections; or there was a resource limitation (insufficient memory or maximum allowed connections) on the server."; + internal const string Snix_PreLogin = @"A connection was successfully established with the server, but then an error occurred during the pre-login handshake."; + internal const string Snix_LoginSspi = @"A connection was successfully established with the server, but then an error occurred when obtaining the security/SSPI context information for integrated security login."; + internal const string Snix_Login = @"A connection was successfully established with the server, but then an error occurred during the login process."; + internal const string Snix_EnableMars = @"Connection open and login was successful, but then an error occurred while enabling MARS for this connection."; + internal const string Snix_AutoEnlist = @"Connection open and login was successful, but then an error occurred while enlisting the connection into the current distributed transaction."; + internal const string Snix_GetMarsSession = @"Failed to establish a MARS session in preparation to send the request to the server."; + internal const string Snix_Execute = @"A transport-level error has occurred when sending the request to the server."; + internal const string Snix_Read = @"A transport-level error has occurred when receiving results from the server."; + internal const string Snix_Close = @"A transport-level error has occurred during connection clean-up."; + internal const string Snix_SendRows = @"A transport-level error has occurred while sending information to the server."; + internal const string Snix_ProcessSspi = @"A transport-level error has occurred during SSPI handshake."; + internal const string LocalDB_CreateFailed = @"Local Database Runtime: Cannot create named instance."; + internal const string LocalDB_BadConfigSectionType = @"Local Database Runtime: system.data.localdb configuration file section is of unknown type."; + internal const string LocalDB_FailedGetDLLHandle = @"Local Database Runtime: Cannot load SQLUserInstance.dll."; + internal const string LocalDB_MethodNotFound = @"Invalid SQLUserInstance.dll found at the location specified in the registry. Verify that the Local Database Runtime feature of SQL Server Express is properly installed."; + internal const string LocalDB_UnobtainableMessage = @"Cannot obtain Local Database Runtime error message"; + internal const string LocalDB_InvalidVersion = @"Local Database Runtime: Invalid instance version specification found in the configuration file."; + internal const string TCE_InvalidKeyEncryptionAlgorithm = @"Invalid key encryption algorithm specified: '{0}'. Expected value: '{1}'."; + internal const string TCE_InvalidKeyEncryptionAlgorithmSysErr = @"Internal error. Invalid key encryption algorithm specified: '{0}'. Expected value: '{1}'."; + internal const string TCE_NullKeyEncryptionAlgorithm = @"Key encryption algorithm cannot be null."; + internal const string TCE_NullKeyEncryptionAlgorithmSysErr = @"Internal error. Key encryption algorithm cannot be null."; + internal const string TCE_EmptyColumnEncryptionKey = @"Empty column encryption key specified."; + internal const string TCE_NullColumnEncryptionKey = @"Column encryption key cannot be null."; + internal const string TCE_EmptyEncryptedColumnEncryptionKey = @"Internal error. Empty encrypted column encryption key specified."; + internal const string TCE_NullEncryptedColumnEncryptionKey = @"Internal error. Encrypted column encryption key cannot be null."; + internal const string TCE_LargeCertificatePathLength = @"Specified certificate path has {0} bytes, which exceeds maximum length of {1} bytes."; + internal const string TCE_LargeCertificatePathLengthSysErr = @"Internal error. Specified certificate path has {0} bytes, which exceeds maximum length of {1} bytes."; + internal const string TCE_NullCertificatePath = @"Certificate path cannot be null. Use the following format: {2}{2}, where is either '{0}' or '{1}'."; + internal const string TCE_NullCertificatePathSysErr = @"Internal error. Certificate path cannot be null. Use the following format: {2}{2}, where is either '{0}' or '{1}'."; + internal const string TCE_NullCspPath = @"Column master key path cannot be null. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {0}."; + internal const string TCE_NullCspPathSysErr = @"Internal error. Column master key path cannot be null. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {0}."; + internal const string TCE_NullCngPath = @"Column master key path cannot be null. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {0}."; + internal const string TCE_NullCngPathSysErr = @"Internal error. Column master key path cannot be null. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {0}."; + internal const string TCE_InvalidCertificatePath = @"Invalid certificate path: '{0}'. Use the following format: {3}{3}, where is either '{1}' or '{2}'."; + internal const string TCE_InvalidCertificatePathSysErr = @"Internal error. Invalid certificate path: '{0}'. Use the following format: {3}{3}, where is either '{1}' or '{2}'."; + internal const string TCE_InvalidCspPath = @"Invalid column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_InvalidCspPathSysErr = @"Internal error. Invalid column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_InvalidCngPath = @"Invalid column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_InvalidCngPathSysErr = @"Internal error. Invalid column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_InvalidCertificateLocation = @"Invalid certificate location '{0}' in certificate path '{1}'. Use the following format: {4}{4}, where is either '{2}' or '{3}'."; + internal const string TCE_InvalidCertificateLocationSysErr = @"Internal error. Invalid certificate location '{0}' in certificate path '{1}'. Use the following format: {4}{4}, where is either '{2}' or '{3}'."; + internal const string TCE_InvalidCertificateStore = @"Invalid certificate store '{0}' specified in certificate path '{1}'. Expected value: '{2}'."; + internal const string TCE_InvalidCertificateStoreSysErr = @"Internal error. Invalid certificate store '{0}' specified in certificate path '{1}'. Expected value: '{2}'."; + internal const string TCE_EmptyCertificateThumbprint = @"Empty certificate thumbprint specified in certificate path '{0}'."; + internal const string TCE_EmptyCertificateThumbprintSysErr = @"Internal error. Empty certificate thumbprint specified in certificate path '{0}'."; + internal const string TCE_EmptyCspName = @"Empty Microsoft cryptographic service provider (CSP) name specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_EmptyCspNameSysErr = @"Internal error. Empty Microsoft cryptographic service provider (CSP) name specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_EmptyCngName = @"Empty Microsoft Cryptography API: Next Generation (CNG) provider name specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_EmptyCngNameSysErr = @"Internal error. Empty Microsoft Cryptography API: Next Generation (CNG) provider name specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_EmptyCspKeyId = @"Empty key identifier specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_EmptyCspKeyIdSysErr = @"Internal error. Empty key identifier specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft cryptographic service provider (CSP): {1}."; + internal const string TCE_EmptyCngKeyId = @"Empty key identifier specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_EmptyCngKeyIdSysErr = @"Internal error. Empty key identifier specified in column master key path: '{0}'. Use the following format for a key stored in a Microsoft Cryptography API: Next Generation (CNG) provider: {1}."; + internal const string TCE_InvalidCspName = @"Invalid Microsoft cryptographic service provider (CSP) name: '{0}'. Verify that the CSP provider name in column master key path: '{1}' is valid and installed on the machine."; + internal const string TCE_InvalidCspNameSysErr = @"Internal error. Invalid Microsoft cryptographic service provider (CSP) name: '{0}'. Verify that the CSP provider name in column master key path: '{1}' is valid and installed on the machine."; + internal const string TCE_InvalidCspKeyId = @"Invalid key identifier: '{0}'. Verify that the key identifier in column master key path: '{1}' is valid and exists in the CSP."; + internal const string TCE_InvalidCspKeyIdSysErr = @"Internal error. Invalid key identifier: '{0}'. Verify that the key identifier in column master key path: '{1}' is valid and exists in the CSP."; + internal const string TCE_InvalidCngKey = @"An error occurred while opening the Microsoft Cryptography API: Next Generation (CNG) key: '{0}'. Verify that the CNG provider name '{1}' is valid, installed on the machine, and the key '{2}' exists."; + internal const string TCE_InvalidCngKeySysErr = @"Internal error. An error occurred while opening the Microsoft Cryptography API: Next Generation (CNG) key: '{0}'. Verify that the CNG provider name '{1}' is valid, installed on the machine, and the key '{2}' exists."; + internal const string TCE_CertificateNotFound = @"Certificate with thumbprint '{0}' not found in certificate store '{1}' in certificate location '{2}'."; + internal const string TCE_CertificateNotFoundSysErr = @"Certificate with thumbprint '{0}' not found in certificate store '{1}' in certificate location '{2}'. Verify the certificate path in the column master key definition in the database is correct, and the certificate has been imported correctly into the certificate location/store."; + internal const string TCE_InvalidAlgorithmVersionInEncryptedCEK = @"Specified encrypted column encryption key contains an invalid encryption algorithm version '{0}'. Expected version is '{1}'."; + internal const string TCE_InvalidCiphertextLengthInEncryptedCEK = @"The specified encrypted column encryption key's ciphertext length: {0} does not match the ciphertext length: {1} when using column master key (certificate) in '{2}'. The encrypted column encryption key may be corrupt, or the specified certificate path may be incorrect."; + internal const string TCE_InvalidCiphertextLengthInEncryptedCEKCsp = @"The specified encrypted column encryption key's ciphertext length: {0} does not match the ciphertext length: {1} when using column master key (asymmetric key) in '{2}'. The encrypted column encryption key may be corrupt, or the specified Microsoft Cryptographic Service provider (CSP) path may be incorrect."; + internal const string TCE_InvalidCiphertextLengthInEncryptedCEKCng = @"The specified encrypted column encryption key's ciphertext length: {0} does not match the ciphertext length: {1} when using column master key (asymmetric key) in '{2}'. The encrypted column encryption key may be corrupt, or the specified Microsoft Cryptography API: Next Generation (CNG) provider path may be incorrect."; + internal const string TCE_InvalidSignatureInEncryptedCEK = @"The specified encrypted column encryption key's signature length: {0} does not match the signature length: {1} when using column master key (certificate) in '{2}'. The encrypted column encryption key may be corrupt, or the specified certificate path may be incorrect."; + internal const string TCE_InvalidSignatureInEncryptedCEKCsp = @"The specified encrypted column encryption key's signature length: {0} does not match the signature length: {1} when using column master key (asymmetric key) in '{2}'. The encrypted column encryption key may be corrupt, or the specified Microsoft cryptographic service provider (CSP) path may be incorrect."; + internal const string TCE_InvalidSignatureInEncryptedCEKCng = @"The specified encrypted column encryption key's signature length: {0} does not match the signature length: {1} when using column master key (asymmetric key) in '{2}'. The encrypted column encryption key may be corrupt, or the specified Microsoft Cryptography API: Next Generation (CNG) provider path may be incorrect."; + internal const string TCE_InvalidCertificateSignature = @"The specified encrypted column encryption key signature does not match the signature computed with the column master key (certificate) in '{0}'. The encrypted column encryption key may be corrupt, or the specified path may be incorrect."; + internal const string TCE_InvalidSignature = @"The specified encrypted column encryption key signature does not match the signature computed with the column master key (asymmetric key) in '{0}'. The encrypted column encryption key may be corrupt, or the specified path may be incorrect."; + internal const string TCE_CertificateWithNoPrivateKey = @"Certificate specified in key path '{0}' does not have a private key to encrypt a column encryption key. Verify the certificate is imported correctly."; + internal const string TCE_CertificateWithNoPrivateKeySysErr = @"Certificate specified in key path '{0}' does not have a private key to decrypt a column encryption key. Verify the certificate is imported correctly."; + internal const string TCE_NullColumnEncryptionKeySysErr = @"Internal error. Column encryption key cannot be null."; + internal const string TCE_InvalidKeySize = @"The column encryption key has been successfully decrypted but it's length: {1} does not match the length: {2} for algorithm '{0}'. Verify the encrypted value of the column encryption key in the database."; + internal const string TCE_InvalidEncryptionType = @"Encryption type '{1}' specified for the column in the database is either invalid or corrupted. Valid encryption types for algorithm '{0}' are: {2}."; + internal const string TCE_NullPlainText = @"Internal error. Plaintext value cannot be null."; + internal const string TCE_VeryLargeCiphertext = @"Cannot encrypt. Encrypting resulted in {0} bytes of ciphertext which exceeds the maximum allowed limit of {1} bytes. The specified plaintext value is likely too large (plaintext size is: {2} bytes)."; + internal const string TCE_NullCipherText = @"Internal error. Ciphertext value cannot be null."; + internal const string TCE_InvalidCipherTextSize = @"Specified ciphertext has an invalid size of {0} bytes, which is below the minimum {1} bytes required for decryption."; + internal const string TCE_InvalidAlgorithmVersion = @"The specified ciphertext's encryption algorithm version '{0}' does not match the expected encryption algorithm version '{1}'."; + internal const string TCE_InvalidAuthenticationTag = @"Specified ciphertext has an invalid authentication tag."; + internal const string TCE_NullColumnEncryptionAlgorithm = @"Internal error. Encryption algorithm cannot be null. Valid algorithms are: {0}."; + internal const string TCE_UnexpectedDescribeParamFormatParameterMetadata = @"Internal error. The result returned by '{0}' is invalid. The parameter metadata resultset is missing."; + internal const string TCE_UnexpectedDescribeParamFormatAttestationInfo = @"Internal error. The result returned by '{0}' is invalid. The attestation information resultset is missing for enclave type '{1}'. "; + internal const string TCE_InvalidEncryptionKeyOrdinalEnclaveMetadata = @"Internal error. Error occurred when populating enclave metadata. The referenced column encryption key ordinal '{0}' is missing in the encryption metadata returned by SQL Server. Max ordinal is '{1}'. "; + internal const string TCE_InvalidEncryptionKeyOrdinalParameterMetadata = @"Internal error. Error occurred when populating parameter metadata. The referenced column encryption key ordinal '{0}' is missing in the encryption metadata returned by SQL Server. Max ordinal is '{1}'. "; + internal const string TCE_MultipleRowsReturnedForAttestationInfo = @"Internal error. Error occurred when parsing the results of '{0}'. The attestation information resultset is expected to contain only one row, but it contains multiple rows."; + internal const string TCE_ParamEncryptionMetaDataMissing = @"Internal error. Metadata for parameter '{1}' in statement or procedure '{2}' is missing in resultset returned by {0}."; + internal const string TCE_ProcEncryptionMetaDataMissing = @"Internal error. Metadata for parameters for command '{1}' in a batch is missing in the resultset returned by {0}."; + internal const string TCE_ColumnMasterKeySignatureVerificationFailed = @"The signature returned by SQL Server for the column master key, specified in key path '{0}', is invalid (does not match the computed signature). Recreate column master key metadata, making sure the signature inside the metadata is computed using the column master key being referenced in the metadata. If the error persists, please contact Microsoft for assistance."; + internal const string TCE_ColumnMasterKeySignatureNotFound = @"Internal error. The signature returned by SQL Server for enclave-enabled column master key, specified at key path '{0}', cannot be null or empty."; + internal const string TCE_UnableToVerifyColumnMasterKeySignature = @"Unable to verify a column master key signature. Error message: {0} "; + internal const string TCE_ParamEncryptionFailed = @"Failed to encrypt parameter '{0}'."; + internal const string TCE_ColumnDecryptionFailed = @"Failed to decrypt column '{0}'."; + internal const string TCE_ParamDecryptionFailed = @"Failed to decrypt parameter '{0}'."; + internal const string TCE_UnknownColumnEncryptionAlgorithm = @"Encryption algorithm '{0}' for the column in the database is either invalid or corrupted. Valid algorithms are: {1}."; + internal const string TCE_UnknownColumnEncryptionAlgorithmId = @"Encryption algorithm id '{0}' for the column in the database is either invalid or corrupted. Valid encryption algorithm ids are: {1}."; + internal const string TCE_UnsupportedNormalizationVersion = @"Normalization version '{0}' received from {2} is not supported. Valid normalization versions are: {1}."; + internal const string TCE_UnrecognizedKeyStoreProviderName = @"Failed to decrypt a column encryption key. Invalid key store provider name: '{0}'. A key store provider name must denote either a system key store provider or a registered custom key store provider. Valid system key store provider names are: {1}. Valid (currently registered) custom key store provider names are: {2}. Please verify key store provider information in column master key definitions in the database, and verify all custom key store providers used in your application are registered properly."; + internal const string TCE_KeyDecryptionFailedCertStore = @"Failed to decrypt a column encryption key using key store provider: '{0}'. The last 10 bytes of the encrypted column encryption key are: '{1}'."; + internal const string TCE_UntrustedKeyPath = @"Column master key path '{0}' received from server '{1}' is not a trusted key path."; + internal const string TCE_KeyDecryptionFailed = @"Failed to decrypt a column encryption key using key store provider: '{0}'. Verify the properties of the column encryption key and its column master key in your database. The last 10 bytes of the encrypted column encryption key are: '{1}'."; + internal const string TCE_UnsupportedDatatype = @"Encryption and decryption of data type '{0}' is not supported."; + internal const string TCE_DecryptionFailed = @"Decryption failed. The last 10 bytes of the encrypted column encryption key are: '{0}'. The first 10 bytes of ciphertext are: '{1}'."; + internal const string TCE_ExceptionWhenGeneratingEnclavePackage = @"Error encountered while generating package to be sent to enclave. Error message: {0}"; + internal const string TCE_InvalidKeyIdUnableToCastToUnsignedShort = @"Internal Error. The given key id '{0}' is not valid. Error occurred when converting the key id to unsigned short. Error Message: {1}"; + internal const string TCE_InvalidDatabaseIdUnableToCastToUnsignedInt = @"Internal Error. The given database id '{0}' is not valid. Error occurred when converting the database id to unsigned int. Error Message: {1}"; + internal const string TCE_InvalidAttestationParameterUnableToConvertToUnsignedInt = @"Invalid attestation parameters specified by the enclave provider for enclave type '{0}'. Error occurred when converting the value '{1}' of parameter '{2}' to unsigned int. Error Message: {3}"; + internal const string TCE_InvalidKeyStoreProviderName = @"Invalid key store provider name: '{0}'. A key store provider name must denote either a system key store provider or a registered custom key store provider. Valid system key store provider names are: {1}. Valid (currently registered) custom key store provider names are: {2}. Please verify key store provider information in column master key definitions in the database, and verify all custom key store providers used in your application are registered properly."; + internal const string TCE_FailedToEncryptRegisterRulesBytePackage = @"Internal Error. Failed to encrypt byte package to be sent to the enclave. Error Message: {0} "; + internal const string TCE_OffsetOutOfBounds = @"Internal Error. Failed to serialize keys to be sent to the enclave. The start offset specified by argument '{0}' for method {1}.{2} is out of bounds."; + internal const string TCE_InsufficientBuffer = @"Internal Error. The buffer specified by argument '{0}' for method '{1}.{2}' has insufficient space."; + internal const string TCE_ColumnEncryptionKeysNotFound = @"Internal Error. Encrypted column encryption keys not found when trying to send the keys to the enclave."; + internal const string TCE_NullEnclaveSessionDuringQueryExecution = @"Internal Error. Enclave session is null during query execution. Enclave type is '{0}' and enclaveAttestationUrl is '{1}'."; + internal const string TCE_NullEnclavePackageForEnclaveBasedQuery = @"Internal Error. Enclave package is null during execution of an enclave based query. Enclave type is '{0}' and enclaveAttestationUrl is '{1}'."; + internal const string TCE_AttestationInfoNotReturnedFromSQLServer = @"Attestation information was not returned by SQL Server. Enclave type is '{0}' and enclave attestation URL is '{1}'."; + internal const string TCE_UnableToEstablishSecureChannel = @"Unable to establish secure channel. Error Message: {0}"; + internal const string TCE_NullArgumentInConstructorInternal = @"Internal Error. Null argument '{0}' specified when constructing an object of type '{1}'. '{0}' cannot be null."; + internal const string TCE_EmptyArgumentInConstructorInternal = @"Internal Error. Empty argument '{0}' specified when constructing an object of type '{1}'. '{0}' cannot be empty."; + internal const string TCE_NullArgumentInternal = @"Internal Error. Argument '{0}' cannot be null when executing method '{1}.{2}'."; + internal const string TCE_EmptyArgumentInternal = @"Internal Error. Argument '{0}' cannot be empty when executing method '{1}.{2}'."; + internal const string TCE_DbConnectionString_EnclaveAttestationUrl = @"Specifies an endpoint of an enclave attestation service, which will be used to verify whether the enclave, configured in the SQL Server instance for computations on database columns encrypted using Always Encrypted, is valid and secure."; + internal const string TCE_CannotGetSqlColumnEncryptionEnclaveProviderConfig = @"Failed to read the configuration section for enclave providers. Make sure the section is correctly formatted in your application configuration file. Error Message: {0}"; + internal const string TCE_CannotCreateSqlColumnEncryptionEnclaveProvider = @"Failed to instantiate an enclave provider with type '{1}' for name '{0}'. Error message: {2} "; + internal const string TCE_SqlColumnEncryptionEnclaveProviderNameCannotBeEmpty = @"Internal Error. SqlColumnEncryptionEnclaveProviderName cannot be null or empty."; + internal const string TCE_NoAttestationUrlSpecifiedForEnclaveBasedQuerySpDescribe = @"Error occurred when reading '{0}' resultset. Attestation URL has not been specified in the connection string, but the query requires enclave computations. Enclave type is '{1}'. "; + internal const string TCE_NoAttestationUrlSpecifiedForEnclaveBasedQueryGeneratingEnclavePackage = @"Error occurred when generating enclave package. Attestation URL has not been specified in the connection string, but the query requires enclave computations. Enclave type is '{0}'. "; + internal const string TCE_EnclaveTypeNullForEnclaveBasedQuery = @"Internal Error. Enclave type received from SQL Server is null or empty when executing a query requiring enclave computations."; + internal const string TCE_EnclaveProvidersNotConfiguredForEnclaveBasedQuery = @"Executing a query requires enclave computations, but the application configuration is missing the enclave provider section."; + internal const string TCE_EnclaveProviderNotFound = @"No enclave provider found for enclave type '{0}' and attestation protocol '{1}'. Please specify the correct attestation protocol in the connection string. "; + internal const string TCE_NullEnclaveSessionReturnedFromProvider = @"Unable to communicate with the enclave. Null enclave session information received from the enclave provider. Enclave type is '{0}' and enclave attestation URL is '{1}'."; + internal const string TCE_ParamInvalidForceColumnEncryptionSetting = @"Cannot set {0} for {3} '{1}' because encryption is not enabled for the statement or procedure '{2}'."; + internal const string TCE_ParamUnExpectedEncryptionMetadata = @"Cannot execute statement or procedure '{1}' because {2} was set for {3} '{0}' and the database expects this parameter to be sent as plaintext. This may be due to a configuration error."; + internal const string TCE_NotSupportedByServer = @"{0} instance in use does not support column encryption."; + internal const string TCE_EnclaveComputationsNotSupported = @"You have specified the enclave attestation URL and attestation protocol in the connection string, but the SQL Server in use does not support enclave based computations - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details."; + internal const string TCE_AttestationURLNotSupported = @"You have specified the enclave attestation URL in the connection string, but the SQL Server in use does not support enclave based computations - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details."; + internal const string TCE_AttestationProtocolNotSupported = @"You have specified the attestation protocol in the connection string, but the SQL Server in use does not support enclave based computations - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details."; + internal const string TCE_EnclaveTypeNotReturned = @"You have specified the enclave attestation URL in the connection string, but the SQL Server did not return an enclave type. Please make sure the enclave type is correctly configured in your instance - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details."; + internal const string TCE_BatchedUpdateColumnEncryptionSettingMismatch = @"{0} should be identical on all commands ({1}, {2}, {3}, {4}) when doing batch updates."; + internal const string TCE_StreamNotSupportOnEncryptedColumn = @"Retrieving encrypted column '{0}' as a {1} is not supported."; + internal const string TCE_SequentialAccessNotSupportedOnEncryptedColumn = @"Retrieving encrypted column '{0}' with {1} is not supported."; + internal const string TCE_CanOnlyCallOnce = @"Key store providers cannot be set more than once."; + internal const string TCE_NullCustomKeyStoreProviderDictionary = @"Column encryption key store provider dictionary cannot be null. Expecting a non-null value."; + internal const string TCE_InvalidCustomKeyStoreProviderName = @"Invalid key store provider name '{0}'. '{1}' prefix is reserved for system key store providers."; + internal const string TCE_NullProviderValue = @"Null reference specified for key store provider '{0}'. Expecting a non-null value."; + internal const string TCE_EmptyProviderName = @"Invalid key store provider name specified. Key store provider names cannot be null or empty."; + internal const string TCE_SqlCommand_ColumnEncryptionSetting = @"Column encryption setting for the command. Overrides the connection level default."; + internal const string TCE_DbConnectionString_ColumnEncryptionSetting = @"Default column encryption setting for all the commands on the connection."; + internal const string TCE_SqlParameter_ForceColumnEncryption = @"Forces parameter to be encrypted before sending sensitive data to server. "; + internal const string TCE_SqlConnection_TrustedColumnMasterKeyPaths = @"Dictionary object containing SQL Server names and their trusted column master key paths."; + internal const string SQLROR_RecursiveRoutingNotSupported = @"Two or more redirections have occurred. Only one redirection per login is allowed."; + internal const string SQLROR_FailoverNotSupported = @"Connecting to a mirrored SQL Server instance using the ApplicationIntent ReadOnly connection option is not supported."; + internal const string SQLROR_UnexpectedRoutingInfo = @"Unexpected routing information received."; + internal const string SQLROR_InvalidRoutingInfo = @"Invalid routing information received."; + internal const string SQLROR_TimeoutAfterRoutingInfo = @"Server provided routing information, but timeout already expired."; + internal const string SQLCR_InvalidConnectRetryCountValue = @"Invalid ConnectRetryCount value (should be 0-255)."; + internal const string SQLCR_InvalidConnectRetryIntervalValue = @"Invalid ConnectRetryInterval value (should be 1-60)."; + internal const string SQLCR_NextAttemptWillExceedQueryTimeout = @"Next reconnection attempt will exceed query timeout. Reconnection was terminated."; + internal const string SQLCR_EncryptionChanged = @"The server did not preserve SSL encryption during a recovery attempt, connection recovery is not possible."; + internal const string SQLCR_TDSVestionNotPreserved = @"The server did not preserve the exact client TDS version requested during a recovery attempt, connection recovery is not possible."; + internal const string SQLCR_AllAttemptsFailed = @"The connection is broken and recovery is not possible. The client driver attempted to recover the connection one or more times and all attempts failed. Increase the value of ConnectRetryCount to increase the number of recovery attempts."; + internal const string SQLCR_UnrecoverableServer = @"The connection is broken and recovery is not possible. The connection is marked by the server as unrecoverable. No attempt was made to restore the connection."; + internal const string SQLCR_UnrecoverableClient = @"The connection is broken and recovery is not possible. The connection is marked by the client driver as unrecoverable. No attempt was made to restore the connection."; + internal const string SQLCR_NoCRAckAtReconnection = @"The server did not acknowledge a recovery attempt, connection recovery is not possible."; + internal const string DbConnectionString_PoolBlockingPeriod = @"Defines the blocking period behavior for a connection pool."; + internal const string AZURESQL_GenericEndpoint = @".database.windows.net"; + internal const string AZURESQL_GermanEndpoint = @".database.cloudapi.de"; + internal const string AZURESQL_UsGovEndpoint = @".database.usgovcloudapi.net"; + internal const string AZURESQL_ChinaEndpoint = @".database.chinacloudapi.cn"; + internal const string TCE_SqlConnection_ColumnEncryptionQueryMetadataCacheEnabled = @"Defines whether query metadata caching is enabled."; + internal const string TCE_SqlConnection_ColumnEncryptionKeyCacheTtl = @"Defines the time-to-live of entries in the column encryption key cache."; + internal const string SQL_Timeout_Execution = @"Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding."; + internal const string AttestationTokenSignatureValidationFailed = @"The validation of an attestation token failed. The token signature does not match the signature omputed using a public key retrieved from the attestation public key endpoint at '{0}'. Verify the DNS apping for the endpoint - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details. If correct, contact Customer Support Services."; + internal const string EnclaveRetrySleepInSecondsValueException = @"Internal error occurred when retrying the download of the HGS root certificate after the initial request failed. Contact Customer Support Services."; + internal const string EnclaveSessionInvalidationFailed = @"Internal error. Unable to invalidate the requested enclave session, because it does not exist in the cache. Contact Customer Support Services."; + internal const string ExpiredAttestationToken = @"The validation of an attestation token failed. The token received from SQL Server is expired. Contact Customer Support Services."; + internal const string FailToCreateEnclaveSession = @"Failed to create enclave session as attestation server is busy."; + internal const string FailToParseAttestationInfo = @"The validation of an attestation information failed. The attestation information has an invalid format. Contact Customer Support Services. Error details: '{0}'."; + internal const string FailToParseAttestationToken = @"The validation of an attestation token failed. The token has an invalid format. Contact Customer Support Services. Error details: '{0}'."; + internal const string GetAttestationSigningCertificateFailedInvalidCertificate = @"The attestation service returned an expired HGS root certificate for attestation URL '{0}'. Check the HGS root certificate configured for your HGS instance - see https://go.microsoft.com/fwlink/?linkid=2160553 for more details."; + internal const string GetAttestationSigningCertificateRequestFailedFormat = @"The obtained HGS root certificate for attestation URL '{0}' has an invalid format. Verify the attestation URL is correct and the HGS server is online and fully initialized - see https://go.microsoft.com/fwlink/?linkid=2160553 for more details. For additional support contact Customer Support Services. Error details: '{1}'."; + internal const string GetAttestationTokenSigningKeysFailed = @"The validation of an attestation token failed. Cannot retrieve a public key from the attestation public key endpoint, or the retrieved key has an invalid format. Error details: '{0}'."; + internal const string GetSharedSecretFailed = @"Signature verification of the enclave's Diffie-Hellman key failed. Contact Customer Support Services."; + internal const string InvalidArgumentToBase64UrlDecoder = @"The validation of an attestation token failed due to an error while decoding the enclave public key obtained from SQL Server. Contact Customer Support Services."; + internal const string InvalidArgumentToSHA256 = @"The validation of an attestation token failed due to an error while computing a hash of the enclave public key obtained from SQL Server. Contact Customer Support Services."; + internal const string InvalidAttestationToken = @"The validation of the attestation token has failed during signature validation. Exception: '{0}'."; + internal const string InvalidClaimInAttestationToken = @"The validation of an attestation token failed. Claim '{0}' in the token has an invalid value of '{1}'. Verify the attestation policy - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details. If the policy is correct, contact Customer Support Services."; + internal const string MissingClaimInAttestationToken = @"The validation of the attestation token failed. Claim '{0}' is missing in the token. Verify the attestation policy - see https://go.microsoft.com/fwlink/?linkid=2157649 for more details. If the policy is correct, contact Customer Support Services."; + internal const string VerifyEnclaveDebuggable = @"Failed to check if the enclave is running in the production mode. Contact Customer Support Services."; + internal const string VerifyEnclavePolicyFailedFormat = @"Could not verify enclave policy due to a difference between the expected and actual values of the policy on property '{0}'. Actual: '{1}', Expected: '{2}' - see https://go.microsoft.com/fwlink/?linkid=2160553 for more details."; + internal const string VerifyEnclaveReportFailed = @"Signature verification of the enclave report failed. The report signature does not match the signature computed using the HGS root certificate. Verify the DNS mapping for the endpoint - see https://go.microsoft.com/fwlink/?linkid=2160553 for more details. If correct, contact Customer Support Services."; + internal const string VerifyEnclaveReportFormatFailed = @"The enclave report received from SQL Server is not in the correct format. Contact Customer Support Services."; + internal const string VerifyHealthCertificateChainFormat = @"Failed to build a chain of trust between the enclave host's health report and the HGS root certificate for attestation URL '{0}' with status: '{1}'. Verify the attestation URL matches the URL configured on the SQL Server - see https://go.microsoft.com/fwlink/?linkid=2160553 for more details. If both the client and SQL Server use the same attestation service, contact Customer Support Services."; + internal const string TCE_DbConnectionString_AttestationProtocol = @"Specifies an attestation protocol for its corresponding enclave attestation service."; + internal const string TCE_DbConnectionString_IPAddressPreference = @"Specifies an IP address preference when connecting to SQL instances."; + internal const string TCE_EnclaveTypeNotSupported = @"The enclave type '{0}' returned from the server is not supported."; + internal const string TCE_AttestationProtocolNotSupportEnclaveType = @"Failed to initialize connection. The attestation protocol '{0}' does not support the enclave type '{1}'."; + internal const string TCE_AttestationProtocolNotSpecifiedForGeneratingEnclavePackage = @"Error occurred when generating enclave package. Attestation Protocol has not been specified in the connection string, but the query requires enclave computations."; + internal const string SQLUDT_InvalidSize = @"UDT size must be less than {1}, size: {0}"; + internal const string SEC_ProtocolWarning = @"Security Warning: The negotiated {0} is an insecure protocol and is supported for backward compatibility only. The recommended protocol version is TLS 1.2 and later."; + internal const string net_invalid_enum = @"The specified value is not valid in the '{0}' enumeration."; + internal const string SQL_BulkLoadInvalidOrderHint = @"The given column order hint is not valid."; + internal const string SQL_BulkLoadOrderHintDuplicateColumn = @"The column '{0}' was specified more than once."; + internal const string SQL_BulkLoadOrderHintInvalidColumn = @"The sorted column '{0}' is not valid in the destination table."; + internal const string SQL_BulkLoadUnspecifiedSortOrder = @"A column order hint cannot have an unspecified sort order."; + internal const string SQL_UnsupportedAuthenticationSpecified = @"Unsupported authentication specified in this context: {0}"; + internal const string SQL_Timeout_Active_Directory_Interactive_Authentication = @"Active Directory Interactive authentication timed out. The user took too long to respond to the authentication request."; + internal const string SQL_SettingInteractiveWithCredential = @"Cannot use 'Authentication=Active Directory Interactive', if the Credential property has been set."; + internal const string SQL_SettingCredentialWithInteractive = @"Cannot set the Credential property if 'Authentication=Active Directory Interactive' has been specified in the connection string."; + internal const string SqlConnection_ServerProcessId = @"Server Process Id (SPID) of the active connection."; + internal const string SQL_Timeout_Active_Directory_DeviceFlow_Authentication = @"Active Directory Device Code Flow authentication timed out. The user took too long to respond to the authentication request."; + internal const string SQL_SettingCredentialWithDeviceFlow = @"Cannot set the Credential property if 'Authentication=Active Directory Device Code Flow' has been specified in the connection string."; + internal const string SQL_SettingCredentialWithNonInteractive = @"Cannot set the Credential property if 'Authentication={0}' has been specified in the connection string."; + internal const string SQL_SettingDeviceFlowWithCredential = @"Cannot use 'Authentication=Active Directory Device Code Flow', if the Credential property has been set."; + internal const string SQL_SettingNonInteractiveWithCredential = @"Cannot use 'Authentication={0}', if the Credential property has been set."; + internal const string SqlDependency_UnexpectedValueOnDeserialize = @"Unexpected type detected on deserialize."; + internal const string SqlRetryLogic_InvalidRange = @"Value '{0}' is out of range. Must be between {1} and {2}."; + internal const string SqlRetryLogic_RetryCanceled = @"The retry has been canceled at attempt {0}."; + internal const string SqlRetryLogic_RetryExceeded = @"The number of retries has exceeded the maximum of {0} attempt(s)."; + internal const string SqlRetryLogic_InvalidMinMaxPair = @"'{0}' is not less than '{1}'; '{2}' cannot be greater than '{3}'."; + internal const string Arg_ArrayPlusOffTooSmall = @"Destination array is not long enough to copy all the items in the collection. Check array index and length."; + internal const string Arg_RankMultiDimNotSupported = @"Only single dimensional arrays are supported for the requested action."; + internal const string Arg_RemoveArgNotFound = @"Cannot remove the specified item because it was not found in the specified Collection."; + internal const string ArgumentOutOfRange_NeedNonNegNum = @"Non-negative number required."; + internal const string SQL_ParameterDirectionInvalidForOptimizedBinding = @"Parameter '{0}' cannot have Direction Output or InputOutput when EnableOptimizedParameterBinding is enabled on the parent command."; + } + } } + diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj index c357dbc4e3..f54e7630c6 100644 --- a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj +++ b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft.Data.SqlClient.csproj @@ -414,6 +414,9 @@ Resources\ResCategoryAttribute.cs + + Resources\ResDescriptionAttribute.cs + @@ -427,8 +430,7 @@ - - + diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlParameter.cs b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlParameter.cs index 7cd0681784..aa1f1cb815 100644 --- a/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlParameter.cs +++ b/src/Microsoft.Data.SqlClient/netfx/src/Microsoft/Data/SqlClient/SqlParameter.cs @@ -284,7 +284,7 @@ public SqlParameter( string sourceColumn, DataRowVersion sourceVersion, object value - ) + ) : this(parameterName, dbType, size, sourceColumn) { Direction = direction; @@ -310,7 +310,7 @@ public SqlParameter( string xmlSchemaCollectionDatabase, string xmlSchemaCollectionOwningSchema, string xmlSchemaCollectionName - ) + ) : this() { ParameterName = parameterName; @@ -454,16 +454,17 @@ public override DbType DbType public override void ResetDbType() => ResetSqlDbType(); /// + [ResCategory("Data")] public override string ParameterName { get => _parameterName ?? string.Empty; set { if ( - string.IsNullOrEmpty(value) || + string.IsNullOrEmpty(value) || (value.Length < TdsEnums.MAX_PARAMETER_NAME_LENGTH) || ( - (value[0] == '@') && + (value[0] == '@') && (value.Length <= TdsEnums.MAX_PARAMETER_NAME_LENGTH) ) ) @@ -1001,7 +1002,7 @@ private void CloneHelper(SqlParameter destination) SqlParameterFlags.CoercedValueIsSqlType | SqlParameterFlags.ForceColumnEncryption | SqlParameterFlags.IsDerivedParameterTypeName - // HasScale and HasReceivedMetadata deliberately omitted + // HasScale and HasReceivedMetadata deliberately omitted ); destination._metaType = _metaType; destination._collation = _collation; @@ -2008,7 +2009,7 @@ internal MetaType ValidateTypeLengths(bool yukonOrNewer) if ( (maxSizeInBytes > TdsEnums.TYPE_SIZE_LIMIT) || HasFlag(SqlParameterFlags.CoercedValueIsDataFeed) || - (sizeInCharacters == -1) || + (sizeInCharacters == -1) || (actualSizeInBytes == -1) ) { // is size > size able to be described by 2 bytes @@ -2025,8 +2026,8 @@ internal MetaType ValidateTypeLengths(bool yukonOrNewer) throw ADP.InvalidMetaDataValue(); //Xml should always have IsPartialLength = true } if ( - mt.SqlDbType == SqlDbType.NVarChar || - mt.SqlDbType == SqlDbType.VarChar || + mt.SqlDbType == SqlDbType.NVarChar || + mt.SqlDbType == SqlDbType.VarChar || mt.SqlDbType == SqlDbType.VarBinary ) { diff --git a/src/Microsoft.Data.SqlClient/netfx/src/Resources/ResDescriptionAttribute.cs b/src/Microsoft.Data.SqlClient/src/Resources/ResDescriptionAttribute.cs similarity index 100% rename from src/Microsoft.Data.SqlClient/netfx/src/Resources/ResDescriptionAttribute.cs rename to src/Microsoft.Data.SqlClient/src/Resources/ResDescriptionAttribute.cs