Skip to content

Commit 08622e7

Browse files
authored
Merge | Port SqlDataSourceConverter, widen test coverage (#3309)
* Port type converter for DataSource, FailoverPartner Also add test coverage for this type converter (and for the netfx-only NetworkLibraryConverter.) * Tests: pass DescriptorContext to InitialCatalogConverter.GetStandardValuesSupported
1 parent 98b2c84 commit 08622e7

File tree

6 files changed

+306
-18
lines changed

6 files changed

+306
-18
lines changed

src/Microsoft.Data.SqlClient/netcore/ref/Microsoft.Data.SqlClient.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1052,6 +1052,7 @@ public SqlConnectionStringBuilder(string connectionString) { }
10521052
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/DataSource/*'/>
10531053
[System.ComponentModel.DisplayNameAttribute("Data Source")]
10541054
[System.ComponentModel.RefreshPropertiesAttribute(System.ComponentModel.RefreshProperties.All)]
1055+
[System.ComponentModel.TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
10551056
public string DataSource { get { throw null; } set { } }
10561057
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/AttestationProtocol/*' />
10571058
[System.ComponentModel.DisplayNameAttribute("Attestation Protocol")]
@@ -1085,6 +1086,7 @@ public SqlConnectionStringBuilder(string connectionString) { }
10851086
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/FailoverPartner/*'/>
10861087
[System.ComponentModel.DisplayNameAttribute("Failover Partner")]
10871088
[System.ComponentModel.RefreshPropertiesAttribute(System.ComponentModel.RefreshProperties.All)]
1089+
[System.ComponentModel.TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
10881090
public string FailoverPartner { get { throw null; } set { } }
10891091
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/FailoverPartnerSPN/*'/>
10901092
[System.ComponentModel.DisplayNameAttribute("Failover Partner SPN")]

src/Microsoft.Data.SqlClient/netfx/ref/Microsoft.Data.SqlClient.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1039,6 +1039,7 @@ public SqlConnectionStringBuilder(string connectionString) { }
10391039
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/DataSource/*'/>
10401040
[System.ComponentModel.DisplayNameAttribute("Data Source")]
10411041
[System.ComponentModel.RefreshPropertiesAttribute(System.ComponentModel.RefreshProperties.All)]
1042+
[System.ComponentModel.TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
10421043
public string DataSource { get { throw null; } set { } }
10431044
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/EnclaveAttestationUrl/*'/>
10441045
[System.ComponentModel.DisplayNameAttribute("Enclave Attestation Url")]
@@ -1072,6 +1073,7 @@ public SqlConnectionStringBuilder(string connectionString) { }
10721073
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/FailoverPartner/*'/>
10731074
[System.ComponentModel.DisplayNameAttribute("Failover Partner")]
10741075
[System.ComponentModel.RefreshPropertiesAttribute(System.ComponentModel.RefreshProperties.All)]
1076+
[System.ComponentModel.TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
10751077
public string FailoverPartner { get { throw null; } set { } }
10761078
/// <include file='../../../../doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml' path='docs/members[@name="SqlConnectionStringBuilder"]/FailoverPartnerSPN/*'/>
10771079
[System.ComponentModel.DisplayNameAttribute("Failover Partner SPN")]

src/Microsoft.Data.SqlClient/src/Microsoft/Data/SqlClient/SqlConnectionStringBuilder.cs

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -749,7 +749,6 @@ private InstanceDescriptor ConvertToInstanceDescriptor(SqlConnectionStringBuilde
749749
}
750750
}
751751

752-
#if NETFRAMEWORK
753752
private sealed class SqlDataSourceConverter : StringConverter
754753
{
755754
private StandardValuesCollection _standardValues;
@@ -768,10 +767,8 @@ public override StandardValuesCollection GetStandardValues(ITypeDescriptorContex
768767
{
769768
// Get the sources rowset for the SQLOLEDB enumerator
770769
DataTable table = SqlClientFactory.Instance.CreateDataSourceEnumerator().GetDataSources();
771-
string ServerName = typeof(System.Data.Sql.SqlDataSourceEnumerator).GetField("ServerName", BindingFlags.NonPublic | BindingFlags.Static).GetValue(null).ToString();
772-
string InstanceName = typeof(System.Data.Sql.SqlDataSourceEnumerator).GetField("InstanceName", BindingFlags.NonPublic | BindingFlags.Static).GetValue(null).ToString();
773-
DataColumn serverName = table.Columns[ServerName];
774-
DataColumn instanceName = table.Columns[InstanceName];
770+
DataColumn serverName = table.Columns[Microsoft.Data.Sql.SqlDataSourceEnumeratorUtil.ServerNameCol];
771+
DataColumn instanceName = table.Columns[Microsoft.Data.Sql.SqlDataSourceEnumeratorUtil.InstanceNameCol];
775772
DataRowCollection rows = table.Rows;
776773

777774
string[] serverNames = new string[rows.Count];
@@ -889,7 +886,7 @@ public override StandardValuesCollection GetStandardValues(ITypeDescriptorContex
889886
return standardValues;
890887
}
891888
}
892-
#else
889+
#if NET
893890
private static readonly string[] s_notSupportedKeywords = {
894891
DbConnectionStringKeywords.ConnectionReset,
895892
DbConnectionStringKeywords.TransactionBinding,
@@ -1194,9 +1191,7 @@ public string CurrentLanguage
11941191
[ResCategory(StringsHelper.ResourceNames.DataCategory_Source)]
11951192
[ResDescription(StringsHelper.ResourceNames.DbConnectionString_DataSource)]
11961193
[RefreshProperties(RefreshProperties.All)]
1197-
#if NETFRAMEWORK
1198-
[TypeConverter(typeof(SqlDataSourceConverter))]
1199-
#endif
1194+
[TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
12001195
public string DataSource
12011196
{
12021197
get => _dataSource;
@@ -1378,9 +1373,7 @@ public bool Enlist
13781373
[ResCategory(StringsHelper.ResourceNames.DataCategory_Source)]
13791374
[ResDescription(StringsHelper.ResourceNames.DbConnectionString_FailoverPartner)]
13801375
[RefreshProperties(RefreshProperties.All)]
1381-
#if NETFRAMEWORK
1382-
[TypeConverter(typeof(SqlDataSourceConverter))]
1383-
#endif
1376+
[TypeConverter("Microsoft.Data.SqlClient.SqlConnectionStringBuilder+SqlDataSourceConverter")]
13841377
public string FailoverPartner
13851378
{
13861379
get => _failoverPartner;

0 commit comments

Comments
 (0)