SqlConnectionStringBuilder.Remove(String) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Removes the entry with the specified key from the SqlConnectionStringBuilder instance.
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
Parameters
- keyword
- String
The key of the key/value pair to be removed from the connection string in this SqlConnectionStringBuilder.
Returns
true
if the key existed within the connection string and was removed; false
if the key did not exist.
Exceptions
keyword
is null (Nothing
in Visual Basic)
Examples
The following example converts an existing connection string from using Windows Authentication to using integrated security. The example works by removing the user name and password from the connection string, and then setting the IntegratedSecurity property of the SqlConnectionStringBuilder object.
Note
This example includes a password to demonstrate how SqlConnectionStringBuilder works with connection strings. In your applications, we recommend that you use Windows Authentication. If you must use a password, do not include a hard-coded password in your application.
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();
}
}
The example displays the following text in the console window:
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
Remarks
Because the Remove method returns a value that indicates its success, it is not required to look for a key before trying to remove the key/value pair from the SqlConnectionStringBuilder instance. Because the SqlConnectionStringBuilder maintains a fixed-size collection of key/value pairs, calling the Remove method simply resets the value of the key/value pair back to its default value.
Because the collection of keys supported by the SqlConnectionStringBuilder is fixed, every item within the collection has a known default value. The following table lists the keys, and the value for each when the SqlConnectionStringBuilder is first initialized, or after the Remove method has been called.
Key | Default value |
---|---|
Application Name | "Framework Microsoft SqlClient Data Provider" when running on .NET Framework. "Core Microsoft SqlClient Data Provider" otherwise. |
AttachDBFilename | Empty string |
Connection Timeout | 15 |
Context Connection(Obsolete) | False |
Current Language | Empty string |
Data Source | Empty string |
Encrypt | False in versions prior to 4.0, True in versions 4.0 and up |
Enlist | True |
Failover Partner | Empty string |
Initial Catalog | Empty string |
Integrated Security | False |
Load Balance Timeout | 0 |
Max Pool Size | 100 |
Min Pool Size | 0 |
MultipleActiveResultSets | False |
Network Library | Empty string |
Packet Size | 8000 |
Password | Empty string |
Persist Security Info | False |
Pooling | True |
Replication | False |
Transaction Binding | Implicit Unbind |
User ID | Empty string |
User Instance | False |
Workstation ID | Empty string |