DbConnectionStringBuilder.EquivalentTo(DbConnectionStringBuilder) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
比較此 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
傳回
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 。 兩個連接字串的連接行為是等價的,因為連接字串中的順序從來不重要。 然而,不同順序可能會影響基於這些連接字串的連線池行為。