次の方法で共有


SqlConnectionStringBuilder.Remove(String) メソッド

定義

指定されたキーを持つエントリを SqlConnectionStringBuilder インスタンスから削除します。

public:
 override bool Remove(System::String ^ keyword);
public override bool Remove (string keyword);
override this.Remove : string -> bool
Public Overrides Function Remove (keyword As String) As Boolean

パラメーター

keyword
String

この SqlConnectionStringBuilder 内の接続文字列から削除するキー/値ペアのキー。

戻り値

キーが接続文字列内に存在していて削除された場合は true、キーが存在しなかった場合は false

例外

keyword が null (Visual Basic の場合は Nothing) です。

次の例では、既存の接続文字列を Windows 認証の使用から統合セキュリティの使用に変換します。 この処理は、接続文字列からユーザー名およびパスワードを削除し、IntegratedSecurity オブジェクトの SqlConnectionStringBuilder プロパティを設定することによって行われます。

注意

この例には、SqlConnectionStringBuilder による接続文字列の操作方法を示すために、パスワードが含まれています。 実際のアプリケーションでは、Windows 認証を使用することをお勧めします。 パスワードを使用する必要がある場合も、ハードコードされたパスワードをアプリケーションに含めないでください。

using System.Data.SqlClient;

class Program
{
    static void Main()
    {
        try
        {
            string connectString =
                "Data Source=(local);User ID=ab;Password= a1Pass@@11;" +
                "Initial Catalog=AdventureWorks";

            SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder(connectString);
            Console.WriteLine("Original: " + builder.ConnectionString);

            // Use the Remove method
            // in order to reset the user ID and password back to their
            // default (empty string) values.
            builder.Remove("User ID");
            builder.Remove("Password");

            // Turn on integrated security:
            builder.IntegratedSecurity = true;

            Console.WriteLine("Modified: " + builder.ConnectionString);

            using (SqlConnection
                       connection = new SqlConnection(builder.ConnectionString))
            {
                connection.Open();
                // Now use the open connection.
                Console.WriteLine("Database = " + connection.Database);
            }
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }

        Console.WriteLine("Press any key to finish.");
        Console.ReadLine();
    }
}
Imports System.Data.SqlClient
    
Module Module1
  Sub Main()
    Try
      Dim connectString As String = _
       "Data Source=(local);User ID=ab;Password=a1Pass@@11;" & _
       "Initial Catalog=AdventureWorks"

      Dim builder As New SqlConnectionStringBuilder(connectString)
      Console.WriteLine("Original: " & builder.ConnectionString)

      ' Use the Remove method
      ' in order to reset the user ID and password back to their
      ' default (empty string) values.
      builder.Remove("User ID")
      builder.Remove("Password")

      ' Turn on integrated security:
      builder.IntegratedSecurity = True

      Console.WriteLine("Modified: " & builder.ConnectionString)

      Using connection As New SqlConnection(builder.ConnectionString)
        connection.Open()
        ' Now use the open connection.
        Console.WriteLine("Database = " & connection.Database)
      End Using

    Catch ex As Exception
      Console.WriteLine(ex.Message)
    End Try

    Console.WriteLine("Press any key to finish.")
    Console.ReadLine()
  End Sub
End Module

この例では、次のテキストがコンソール ウィンドウに表示されます。

Original: Data Source=(local);Initial Catalog=AdventureWorks;User ID=ab;Password= a1Pass@@11
Modified: Data Source=(local);Initial Catalog=AdventureWorks;Integrated Security=True
Database = AdventureWorks

注釈

Remove メソッドは成功を示す値を返すので、インスタンスからキーと値のペアを削除する前にキーを検索するSqlConnectionStringBuilder必要はありません。 SqlConnectionStringBuilder では、キー/値ペアの固定サイズ コレクションが管理されているため、Remove メソッドを呼び出した場合には単純に、キー/値ペアの値が元の既定値にリセットされます。

SqlConnectionStringBuilder でサポートされているキーのコレクションは固定であるため、コレクション内のすべての項目には、既知の既定値があります。 次の表は、キーの一覧を示し、各キーについて、SqlConnectionStringBuilder が初めて初期化されたときまたは Remove メソッドが呼び出された後の値を示しています。

Key 既定値
アプリケーション名 ".Net SqlClient Data Provider"
Asynchronous Processing ×
AttachDBFilename 空の文字列
[接続タイムアウト] 15
コンテキスト接続 ×
[現在の言語] 空の文字列
Data Source 空の文字列
Encrypt ×
Enlist
Failover Partner 空の文字列
Initial Catalog 空の文字列
Integrated Security ×
Load Balance Timeout 0
Max Pool Size 100
Min Pool Size 0
MultipleActiveResultSets ×
Network Library 空の文字列
Packet Size 8000
Password 空の文字列
Persist Security Info ×
Pooling
レプリケーション ×
Transaction Binding Implicit Unbind
User ID 空の文字列
User Instance ×
[ワークステーション ID] 空の文字列

適用対象

こちらもご覧ください