diff --git a/doc/snippets/Microsoft.Data.SqlClient/SqlConnection.xml b/doc/snippets/Microsoft.Data.SqlClient/SqlConnection.xml
index 9d77cb26d3..1c279f7a17 100644
--- a/doc/snippets/Microsoft.Data.SqlClient/SqlConnection.xml
+++ b/doc/snippets/Microsoft.Data.SqlClient/SqlConnection.xml
@@ -1872,6 +1872,7 @@
- .database.usgovcloudapi.net
- .database.cloudapi.de
- .database.windows.net
+ - .database.fabric.microsoft.com
- Authentication is one of the 'Active Directory' authentication types.
diff --git a/doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml b/doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml
index 89db9e0d12..ede06e0540 100644
--- a/doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml
+++ b/doc/snippets/Microsoft.Data.SqlClient/SqlConnectionStringBuilder.xml
@@ -1638,6 +1638,7 @@
- .database.usgovcloudapi.net
- .database.cloudapi.de
- .database.windows.net
+ - .database.fabric.microsoft.com
-
diff --git a/src/Microsoft.Data.SqlClient/src/Microsoft/Data/Common/AdapterUtil.cs b/src/Microsoft.Data.SqlClient/src/Microsoft/Data/Common/AdapterUtil.cs
index 3f23a186f8..da8b65f837 100644
--- a/src/Microsoft.Data.SqlClient/src/Microsoft/Data/Common/AdapterUtil.cs
+++ b/src/Microsoft.Data.SqlClient/src/Microsoft/Data/Common/AdapterUtil.cs
@@ -750,16 +750,31 @@ internal static Version GetAssemblyVersion()
private const string ONDEMAND_PREFIX = "-ondemand";
private const string AZURE_SYNAPSE = "-ondemand.sql.azuresynapse.";
+ private const string FABRIC_DATAWAREHOUSE = "datawarehouse.fabric.microsoft.com";
+ private const string PBI_DATAWAREHOUSE = "datawarehouse.pbidedicated.microsoft.com";
+ private const string PBI_DATAWAREHOUSE2 = ".pbidedicated.microsoft.com";
+ private const string PBI_DATAWAREHOUSE3 = ".pbidedicated.windows.net";
+ private const string AZURE_SQL = ".database.windows.net";
+ private const string AZURE_SQL_GERMANY = ".database.cloudapi.de";
+ private const string AZURE_SQL_USGOV = ".database.usgovcloudapi.net";
+ private const string AZURE_SQL_CHINA = ".database.chinacloudapi.cn";
+ private const string AZURE_SQL_FABRIC = ".database.fabric.microsoft.com";
internal static bool IsAzureSynapseOnDemandEndpoint(string dataSource)
{
- return IsEndpoint(dataSource, ONDEMAND_PREFIX) || dataSource.Contains(AZURE_SYNAPSE);
+ return IsEndpoint(dataSource, ONDEMAND_PREFIX)
+ || dataSource.Contains(AZURE_SYNAPSE)
+ || dataSource.Contains(FABRIC_DATAWAREHOUSE)
+ || dataSource.Contains(PBI_DATAWAREHOUSE)
+ || dataSource.Contains(PBI_DATAWAREHOUSE2)
+ || dataSource.Contains(PBI_DATAWAREHOUSE3);
}
- internal static readonly string[] s_azureSqlServerEndpoints = { StringsHelper.GetString(Strings.AZURESQL_GenericEndpoint),
- StringsHelper.GetString(Strings.AZURESQL_GermanEndpoint),
- StringsHelper.GetString(Strings.AZURESQL_UsGovEndpoint),
- StringsHelper.GetString(Strings.AZURESQL_ChinaEndpoint)};
+ internal static readonly string[] s_azureSqlServerEndpoints = { AZURE_SQL,
+ AZURE_SQL_GERMANY,
+ AZURE_SQL_USGOV,
+ AZURE_SQL_CHINA,
+ AZURE_SQL_FABRIC };
internal static bool IsAzureSqlServerEndpoint(string dataSource)
{
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.Designer.cs b/src/Microsoft.Data.SqlClient/src/Resources/Strings.Designer.cs
index 21303d710b..a143ee9479 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.Designer.cs
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.Designer.cs
@@ -1923,42 +1923,6 @@ internal static string AttestationTokenSignatureValidationFailed {
}
}
- ///
- /// Looks up a localized string similar to .database.chinacloudapi.cn.
- ///
- internal static string AZURESQL_ChinaEndpoint {
- get {
- return ResourceManager.GetString("AZURESQL_ChinaEndpoint", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to .database.windows.net.
- ///
- internal static string AZURESQL_GenericEndpoint {
- get {
- return ResourceManager.GetString("AZURESQL_GenericEndpoint", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to .database.cloudapi.de.
- ///
- internal static string AZURESQL_GermanEndpoint {
- get {
- return ResourceManager.GetString("AZURESQL_GermanEndpoint", resourceCulture);
- }
- }
-
- ///
- /// Looks up a localized string similar to .database.usgovcloudapi.net.
- ///
- internal static string AZURESQL_UsGovEndpoint {
- get {
- return ResourceManager.GetString("AZURESQL_UsGovEndpoint", resourceCulture);
- }
- }
-
///
/// Looks up a localized string similar to There is more than one table with the same name '{0}' (even if namespace is different)..
///
@@ -13962,3 +13926,4 @@ internal static string Xml_ValueOutOfRange {
}
}
}
+
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.cs.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.cs.resx
index dab58a9365..3227276c47 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.cs.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.cs.resx
@@ -1845,9 +1845,6 @@
Neshodné typy SourceColumn {0} z(e) {1} a DataColumn {2} z(e) {3} nelze převést.
-
- Nebyl nalezen objekt DataColumn {0} pro SourceColumn {2}.
-
V objektu DataTable {1} pro vlastnost SourceColumn {2} chybí objekt DataColumn {0}.
@@ -4446,18 +4443,6 @@
Definuje chování v období blokování pro fond připojení.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Definuje, zda je povolené ukládání metadat dotazu do mezipaměti.
@@ -4752,4 +4737,7 @@
Byla překročena maximální velikost vyrovnávací paměti: {0}
-
\ No newline at end of file
+
+ Nebyl nalezen objekt DataColumn {0} pro SourceColumn {2}.
+
+
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.de.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.de.resx
index 0425bb294c..72acfe8e47 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.de.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.de.resx
@@ -1845,9 +1845,6 @@
Nicht konvertierbarer Typenkonflikt zwischen SourceColumn '{0}' von {1} und DataColumn '{2}' von {3}.
-
- DataColumn '{0}' für SourceColumn '{2}' ist nicht vorhanden.
-
DataColumn '{0}' in der DataTable '{1}' für SourceColumn '{2}' ist nicht vorhanden.
@@ -4446,18 +4443,6 @@
Definiert das Verhalten im Blockierungszeitraum für einen Verbindungspool.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Definiert, ob das Zwischenspeichern von Abfragemetadaten aktiviert ist.
@@ -4752,4 +4737,7 @@
Maximale Puffergröße überschritten: {0}
-
\ No newline at end of file
+
+ DataColumn '{0}' für SourceColumn '{2}' ist nicht vorhanden.
+
+
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.es.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.es.resx
index 7f89500911..0dbea94135 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.es.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.es.resx
@@ -1845,9 +1845,6 @@
Falta de coincidencia entre los tipos que no se pueden convertir SourceColumn '{0}' de {1} y DataColumn '{2}' de {3}.
-
- Falta DataColumn '{0}' para SourceColumn '{2}'.
-
Falta DataColumn '{0}' en DataTable '{1}' para SourceColumn '{2}'.
@@ -4446,18 +4443,6 @@
Define el comportamiento del período de bloqueo para un grupo de conexiones.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Define si está habilitado el almacenamiento en caché de los metadatos de consulta.
@@ -4752,4 +4737,7 @@
Se ha superado el tamaño máximo del búfer: {0}
+
+ Falta DataColumn '{0}' para SourceColumn '{2}'.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.fr.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.fr.resx
index c95a42c730..0ceeff2997 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.fr.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.fr.resx
@@ -1845,9 +1845,6 @@
Incompatibilité de type ne pouvant pas être converti entre SourceColumn '{0}' de {1} et DataColumn '{2}' de {3}.
-
- DataColumn '{0}' manquant pour SourceColumn '{2}'.
-
DataColumn '{0}' manquant dans DataTable '{1}' pour SourceColumn '{2}'.
@@ -4446,18 +4443,6 @@
Définit le comportement de la période de blocage pour un pool de connexions.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Définit si la mise en cache des métadonnées de requête est activée.
@@ -4752,4 +4737,7 @@
Taille maximale de la mémoire tampon dépassée : {0}
+
+ DataColumn '{0}' manquant pour SourceColumn '{2}'.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.it.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.it.resx
index 5ddc1291a8..27f7ccc617 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.it.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.it.resx
@@ -1845,9 +1845,6 @@
Impossibile eseguire la conversione. Il tipo della proprietà SourceColumn "{0}" di {1} non corrisponde a quello della proprietà DataColumn "{2}" di {3}.
-
- DataColumn '{0}' mancante per la SourceColumn '{2}'.
-
DataColumn '{0}' mancante nella DataTable '{1}' per la SourceColumn '{2}'.
@@ -4446,18 +4443,6 @@
Consente di definire il comportamento del periodo di blocco per un pool di connessioni.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Consente di definire se la memorizzazione nella cache dei metadati della query è abilitata.
@@ -4752,4 +4737,7 @@
Superata la dimensione massima del buffer: {0}
+
+ DataColumn '{0}' mancante per la SourceColumn '{2}'.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ja.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ja.resx
index 9840274792..da1656a564 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ja.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ja.resx
@@ -1845,9 +1845,6 @@
SourceColumn '{1}' の '{0}' と {3} の DataColumn '{2}' の間に変換不可能な型の不一致があります。
-
- SourceColumn '{2}' の DataColumn '{0}' が見つかりません。
-
SourceColumn '{2}' の DataTable '{1}' に DataColumn '{0}' が見つかりません。
@@ -4446,18 +4443,6 @@
接続プールのためのブロック期間ビヘイビアーを定義します。
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
クエリ メタデータ キャッシュが有効であるかどうかを定義します。
@@ -4752,4 +4737,7 @@
バッファーの最大サイズを超えました: {0}
+
+ SourceColumn '{2}' の DataColumn '{0}' が見つかりません。
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ko.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ko.resx
index f54f0b071a..7ba68c63bb 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ko.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ko.resx
@@ -1845,9 +1845,6 @@
{1}의 SourceColumn '{0}'과(와) {3}의 DataColumn '{2}'의 유형이 일치하지 않습니다.
-
- SourceColumn '{2}'에 DataColumn '{0}'이(가) 없습니다.
-
SourceColumn '{2}'의 DataTable '{1}'에 DataColumn '{0}'이(가) 없습니다.
@@ -4446,18 +4443,6 @@
연결 풀에 대한 차단 기간 동작을 정의합니다.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
쿼리 메타데이터 캐싱을 사용하는지를 정의합니다.
@@ -4752,4 +4737,7 @@
버퍼 최대 크기 초과: {0}
+
+ SourceColumn '{2}'에 DataColumn '{0}'이(가) 없습니다.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.pl.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.pl.resx
index dcc5e877ca..eca9a12445 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.pl.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.pl.resx
@@ -1845,9 +1845,6 @@
Niezgodność typów niemożliwych do konwersji między elementem SourceColumn {0} z {1} a elementem DataColumn {2} z {3}.
-
- Brak elementu DataColumn {0} dla elementu SourceColumn {2}.
-
Brak elementu DataColumn {0} w elemencie DataTable {1} dla elementu SourceColumn {2}.
@@ -4446,18 +4443,6 @@
Definiuje zachowanie okresu blokowania dla puli połączeń.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Określa, czy jest włączone buforowanie metadanych zapytań.
@@ -4752,4 +4737,7 @@
Przekroczono maksymalny rozmiar buforu: {0}
+
+ Brak elementu DataColumn {0} dla elementu SourceColumn {2}.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.pt-BR.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.pt-BR.resx
index 1240bdc2b8..c905755c9c 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.pt-BR.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.pt-BR.resx
@@ -1845,9 +1845,6 @@
Tipos não conversíveis incompatíveis entre SourceColumn '{0}' de {1} e DataColumn '{2}' de {3}.
-
- DataColumn '{0}' de SourceColumn '{2}' inexistente.
-
DataColumn '{0}' em DataTable '{1}' de SourceColumn '{2}' inexistente.
@@ -4446,18 +4443,6 @@
Define o comportamento de período de bloqueio para um pool de conexões.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Define se o cache de metadados de consulta está habilitado.
@@ -4752,4 +4737,7 @@
Tamanho máximo do buffer excedido: {0}
+
+ DataColumn '{0}' de SourceColumn '{2}' inexistente.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.resx
index 4da621f979..6220147015 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.resx
@@ -1845,9 +1845,6 @@
Inconvertible type mismatch between SourceColumn '{0}' of {1} and the DataColumn '{2}' of {3}.
-
- Missing the DataColumn '{0}' for the SourceColumn '{2}'.
-
Missing the DataColumn '{0}' in the DataTable '{1}' for the SourceColumn '{2}'.
@@ -4446,18 +4443,6 @@
Defines the blocking period behavior for a connection pool.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Defines whether query metadata caching is enabled.
@@ -4752,4 +4737,7 @@
Buffer maximum size exceeded: {0}
+
+ Missing the DataColumn '{0}' for the SourceColumn '{2}'.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ru.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ru.resx
index 92d4fad694..b4d9b09370 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.ru.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.ru.resx
@@ -1845,9 +1845,6 @@
Не поддающееся преобразованию несоответствие типов между SourceColumn "{0}" из {1} и DataColumn "{2}" из {3}.
-
- Отсутствует DataColumn "{0}" для данного SourceColumn "{2}".
-
В DataTable "{1}" отсутствует DataColumn "{0}" для данного SourceColumn "{2}".
@@ -4446,18 +4443,6 @@
Задает поведение периода блокировки для пула подключений.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Определяет, включено ли кэширование метаданных запросов.
@@ -4752,4 +4737,7 @@
Превышен максимальный размер буфера: {0}
+
+ Отсутствует DataColumn "{0}" для данного SourceColumn "{2}".
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.tr.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.tr.resx
index 07d172298f..d4789372b9 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.tr.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.tr.resx
@@ -1845,9 +1845,6 @@
'{1}' / {0} öğesine ait SourceColumn ile '{3}' / {2} öğesine ait DataColumn arasında dönüştürülemez tür uyuşmazlığı.
-
- SourceColumn '{2}' için DataColumn '{0}' eksik.
-
SourceColumn '{2}' için DataTable '{1}' içinde DataColumn '{0}' eksik.
@@ -4446,18 +4443,6 @@
Bir bağlantı havuzundaki bağlantılar için engelleme dönemi davranışını tanımlar.
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
Sorgu meta verilerini önbelleğe almanın etkin olup olmadığını tanımlar.
@@ -4752,4 +4737,7 @@
Arabellek boyut üst sınırı aşıldı: {0}
+
+ SourceColumn '{2}' için DataColumn '{0}' eksik.
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hans.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hans.resx
index 82aa2d0e70..168b1bc1a1 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hans.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hans.resx
@@ -1845,9 +1845,6 @@
{1} 的 SourceColumn“{0}”和 {3} 的 DataColumn“{2}”之间无法转换的类型不匹配。
-
- 缺少 SourceColumn“{2}”的 DataColumn“{0}”。
-
DataTable“{1}”中缺少 SourceColumn“{2}”的 DataColumn“{0}”。
@@ -4446,18 +4443,6 @@
定义针对连接池的暂停时段行为。
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
定义是否启用查询元数据缓存。
@@ -4752,4 +4737,7 @@
超出缓冲区最大大小: {0}
+
+ 缺少 SourceColumn“{2}”的 DataColumn“{0}”。
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hant.resx b/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hant.resx
index 7364df016e..1195bc8c6e 100644
--- a/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hant.resx
+++ b/src/Microsoft.Data.SqlClient/src/Resources/Strings.zh-Hant.resx
@@ -1845,9 +1845,6 @@
{1} 的 SourceColumn '{0}' 與 {3} 的 DataColumn '{2}' 之間發生不可轉換類型不符的問題。
-
- 遺漏 SourceColumn '{2}' 的 DataColumn '{0}'。
-
在 DataTable '{1}' 中遺漏 SourceColumn '{2}' 的 DataColumn '{0}'。
@@ -4446,18 +4443,6 @@
為連接集區定義封鎖期間行為。
-
- .database.windows.net
-
-
- .database.cloudapi.de
-
-
- .database.usgovcloudapi.net
-
-
- .database.chinacloudapi.cn
-
定義是否啟用查詢中繼資料快取。
@@ -4752,4 +4737,7 @@
已超過緩衝區大小上限: {0}
+
+ 遺漏 SourceColumn '{2}' 的 DataColumn '{0}'。
+
\ No newline at end of file
diff --git a/src/Microsoft.Data.SqlClient/tests/FunctionalTests/SqlConnectionTest.cs b/src/Microsoft.Data.SqlClient/tests/FunctionalTests/SqlConnectionTest.cs
index 54b04234d6..75fb85b384 100644
--- a/src/Microsoft.Data.SqlClient/tests/FunctionalTests/SqlConnectionTest.cs
+++ b/src/Microsoft.Data.SqlClient/tests/FunctionalTests/SqlConnectionTest.cs
@@ -1082,10 +1082,15 @@ public void ConnectionRetryForNonAzureEndpoints()
Assert.Equal(1, (int)field.GetValue(cn));
}
- [Fact]
- public void ConnectionRetryForAzureDbEndpoints()
+ [Theory]
+ [InlineData("myserver.database.windows.net")]
+ [InlineData("myserver.database.cloudapi.de")]
+ [InlineData("myserver.database.usgovcloudapi.net")]
+ [InlineData("myserver.database.chinacloudapi.cn")]
+ [InlineData("myserver.database.fabric.microsoft.com")]
+ public void ConnectionRetryForAzureDbEndpoints(string serverName)
{
- SqlConnection cn = new SqlConnection("Data Source = someserver.database.windows.net");
+ SqlConnection cn = new SqlConnection($"Data Source = {serverName}");
FieldInfo field = typeof(SqlConnection).GetField("_connectRetryCount", BindingFlags.Instance | BindingFlags.NonPublic);
Assert.NotNull(field.GetValue(cn));
Assert.Equal(2, (int)field.GetValue(cn));
@@ -1094,6 +1099,10 @@ public void ConnectionRetryForAzureDbEndpoints()
[Theory]
[InlineData("myserver-ondemand.sql.azuresynapse.net")]
[InlineData("someserver-ondemand.database.windows.net")]
+ [InlineData("datawarehouse.fabric.microsoft.com")]
+ [InlineData("datawarehouse.pbidedicated.microsoft.com")]
+ [InlineData("someserver.pbidedicated.microsoft.com")]
+ [InlineData("someserver.pbidedicated.windows.net")]
public void ConnectionRetryForAzureOnDemandEndpoints(string serverName)
{
SqlConnection cn = new SqlConnection($"Data Source = {serverName}");
diff --git a/src/Microsoft.Data.SqlClient/tests/ManualTests/SQL/ConnectionPoolTest/PoolBlockPeriodTest.cs b/src/Microsoft.Data.SqlClient/tests/ManualTests/SQL/ConnectionPoolTest/PoolBlockPeriodTest.cs
index 7124d33766..5559dbff8e 100644
--- a/src/Microsoft.Data.SqlClient/tests/ManualTests/SQL/ConnectionPoolTest/PoolBlockPeriodTest.cs
+++ b/src/Microsoft.Data.SqlClient/tests/ManualTests/SQL/ConnectionPoolTest/PoolBlockPeriodTest.cs
@@ -13,6 +13,7 @@ public class PoolBlockPeriodTest
private const string AzureChinaEnpointSample = "nonexistent.database.chinacloudapi.cn";
private const string AzureUSGovernmentEndpointSample = "nonexistent.database.usgovcloudapi.net";
private const string AzureGermanEndpointSample = "nonexistent.database.cloudapi.de";
+ private const string AzureFabricEndpointSample = "nonexistent.database.fabric.microsoft.com";
private const string AzureEndpointMixedCaseSample = "nonexistent.database.WINDOWS.net";
private const string NonExistentServer = "nonexistentserver";
private const string PolicyKeyword = "PoolBlockingPeriod";