DbConnectionStringBuilder.EquivalentTo(DbConnectionStringBuilder) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Сравнивает сведения о подключении в этом объекте DbConnectionStringBuilder со сведениями о подключении в предоставленном объекте.
public:
virtual bool EquivalentTo(System::Data::Common::DbConnectionStringBuilder ^ connectionStringBuilder);
public virtual bool EquivalentTo (System.Data.Common.DbConnectionStringBuilder connectionStringBuilder);
abstract member EquivalentTo : System.Data.Common.DbConnectionStringBuilder -> bool
override this.EquivalentTo : System.Data.Common.DbConnectionStringBuilder -> bool
Public Overridable Function EquivalentTo (connectionStringBuilder As DbConnectionStringBuilder) As Boolean
Параметры
- connectionStringBuilder
- DbConnectionStringBuilder
Объект DbConnectionStringBuilder, который необходимо сравнить с объектом DbConnectionStringBuilder.
Возвращаемое значение
true
, если сведения о подключении в обоих объектах DbConnectionStringBuilder приводят к появлению эквивалентной строки подключения; в противном случае — false
.
Примеры
static void Main()
{
DbConnectionStringBuilder builder1 =
new DbConnectionStringBuilder();
builder1.ConnectionString =
"Value1=SomeValue;Value2=20;Value3=30;Value4=40";
Console.WriteLine("builder1 = " + builder1.ConnectionString);
DbConnectionStringBuilder builder2 =
new DbConnectionStringBuilder();
builder2.ConnectionString =
"value2=20;value3=30;VALUE4=40;Value1=SomeValue";
Console.WriteLine("builder2 = " + builder2.ConnectionString);
DbConnectionStringBuilder builder3 =
new DbConnectionStringBuilder();
builder3.ConnectionString =
"value2=20;value3=30;VALUE4=40;Value1=SOMEVALUE";
Console.WriteLine("builder3 = " + builder3.ConnectionString);
// builder1 and builder2 contain the same
// keys and values, in different order, and the
// keys are not consistently cased. They are equivalent.
Console.WriteLine("builder1.EquivalentTo(builder2) = " +
builder1.EquivalentTo(builder2).ToString());
// builder2 and builder3 contain the same key/value pairs in the
// the same order, but the value casing is different, so they're
// not equivalent.
Console.WriteLine("builder2.EquivalentTo(builder3) = " +
builder2.EquivalentTo(builder3).ToString());
Console.WriteLine("Press Enter to continue.");
Console.ReadLine();
}
Sub Main()
Dim builder1 As New DbConnectionStringBuilder
builder1.ConnectionString = _
"Value1=SomeValue;Value2=20;Value3=30;Value4=40"
Console.WriteLine("builder1 = " & builder1.ConnectionString)
Dim builder2 As New DbConnectionStringBuilder
builder2.ConnectionString = _
"value2=20;value3=30;VALUE4=40;Value1=SomeValue"
Console.WriteLine("builder2 = " & builder2.ConnectionString)
Dim builder3 As New DbConnectionStringBuilder
builder3.ConnectionString = _
"value2=20;value3=30;VALUE4=40;Value1=SOMEVALUE"
Console.WriteLine("builder3 = " & builder3.ConnectionString)
' builder1 and builder2 contain the same
' keys and values, in different order, and the
' keys are not consistently cased. They are equivalent.
Console.WriteLine("builder1.EquivalentTo(builder2) = " & _
builder1.EquivalentTo(builder2).ToString())
' builder2 and builder3 contain the same key/value pairs in the
' the same order, but the value casing is different, so they're
' not equivalent.
Console.WriteLine("builder2.EquivalentTo(builder3) = " & _
builder2.EquivalentTo(builder3).ToString())
Console.WriteLine("Press Enter to continue.")
Console.ReadLine()
End Sub
В этом примере отображаются следующие выходные данные:
builder1 = value1=SomeValue;value2=20;value3=30;value4=40
builder2 = value2=20;value3=30;value4=40;value1=SomeValue
builder3 = value2=20;value3=30;value4=40;value1=SOMEVALUE
builder1.EquivalentTo(builder2) = True
builder2.EquivalentTo(builder3) = False
Комментарии
Сравнение имен ключей не учитывает регистр; Сравнение значений учитывает регистр.
Метод EquivalentTo возвращает значение true
, если пары "ключ-значение" равны, независимо от их порядка. Поведение двух строк подключения эквивалентно, так как порядок никогда не имеет значения в строках подключения. Однако другой порядок может повлиять на поведение пулов подключений на основе этих строк подключения.