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 Microsoft.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();
    }
}

该示例在控制台窗口中显示以下文本:

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 方法后每个键的值。

默认值
应用程序名称 在 .NET Framework 运行时的“Framework Microsoft SqlClient 数据提供程序”。 否则为“Core Microsoft SqlClient 数据提供程序”。
AttachDBFilename 空字符串
连接超时值 15
上下文连接 (已过时) 错误
当前语言 空字符串
数据源 空字符串
加密 在 4.0 之前的版本中为 False,在版本 4.0 及更新版本中为 True
Enlist 正确
Failover Partner 空字符串
初始目录 空字符串
集成安全性 错误
Load Balance Timeout 0
Max Pool Size 100
Min Pool Size 0
MultipleActiveResultSets 错误
Network Library 空字符串
Packet Size 8000
密码 空字符串
持久性安全信息 错误
Pooling 正确
复制 错误
Transaction Binding Implicit Unbind
用户 ID 空字符串
User Instance 错误
工作站 ID 空字符串

适用于