OracleConnectionStringBuilder 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
注意
OracleConnectionStringBuilder has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260
为创建和管理由 OracleConnection 类使用的连接字符串的内容提供了一种简单方法。
public ref class OracleConnectionStringBuilder sealed : System::Data::Common::DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleConnectionStringBuilder+OracleConnectionStringBuilderConverter))]
public sealed class OracleConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
[System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleConnectionStringBuilder+OracleConnectionStringBuilderConverter))]
[System.Obsolete("OracleConnectionStringBuilder has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260", false)]
public sealed class OracleConnectionStringBuilder : System.Data.Common.DbConnectionStringBuilder
[<System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleConnectionStringBuilder+OracleConnectionStringBuilderConverter))>]
type OracleConnectionStringBuilder = class
inherit DbConnectionStringBuilder
[<System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleConnectionStringBuilder+OracleConnectionStringBuilderConverter))>]
[<System.Obsolete("OracleConnectionStringBuilder has been deprecated. http://go.microsoft.com/fwlink/?LinkID=144260", false)>]
type OracleConnectionStringBuilder = class
inherit DbConnectionStringBuilder
Public NotInheritable Class OracleConnectionStringBuilder
Inherits DbConnectionStringBuilder
- 继承
- 属性
示例
以下控制台应用程序为 Oracle 数据库生成连接字符串。 代码使用 类OracleConnectionStringBuilder创建连接字符串,然后将 实例的 OracleConnectionStringBuilder 属性传递给ConnectionString连接类的构造函数。 该示例还分析现有连接字符串,并演示了操作连接字符串内容的各种方法。
注意
该示例包括一个密码以演示 OracleConnectionStringBuilder 如何使用连接字符串。 在您的应用程序中,建议使用 Windows 身份验证。 如果必须使用密码,请不要在你的应用程序中包括硬编码的密码。
// You may need to set a reference to the System.Data.OracleClient
// assembly before you can run this sample.
using System.Data.OracleClient;
class Program
{
static void Main()
{
// Create a new OracleConnectionStringBuilder and
// initialize it with a few name/value pairs.
OracleConnectionStringBuilder builder =
new OracleConnectionStringBuilder(GetConnectionString());
// Note that the input connection string used the
// Server key, but the new connection string uses
// the well-known Data Source key instead.
Console.WriteLine(builder.ConnectionString);
// Pass the OracleConnectionStringBuilder an existing
// connection string, and you can retrieve and
// modify any of the elements.
builder.ConnectionString = "server=OracleDemo;user id=maryc;" +
"password=pass@word1";
// Now that the connection string has been parsed,
// you can work with individual items.
Console.WriteLine(builder.Password);
builder.Password = "newPassword";
builder.PersistSecurityInfo = true;
// You can refer to connection keys using strings,
// as well. When you use this technique (the default
// Item property in Visual Basic, or the indexer in C#),
// you can specify any synonym for the connection string key
// name.
builder["Server"] = ".";
builder["Load Balance Timeout"] = 1000;
builder["Integrated Security"] = true;
Console.WriteLine(builder.ConnectionString);
Console.WriteLine("Press Enter to finish.");
Console.ReadLine();
}
private static string GetConnectionString()
{
// To avoid storing the connection string in your code,
// you can retrieve it from a configuration file.
return "Server=OracleDemo;Integrated Security=true";
}
}
' You may need to set a reference to the System.Data.OracleClient
' assembly before running this example.
Imports System.Data.OracleClient
Module Module1
Sub Main()
' Create a new OracleConnectionStringBuilder and
' initialize it with a few name/value pairs.
Dim builder As New OracleConnectionStringBuilder(GetConnectionString())
' Note that the input connection string used the
' Server key, but the new connection string uses
' the well-known Data Source key instead.
Console.WriteLine(builder.ConnectionString)
' Pass the OracleConnectionStringBuilder an existing
' connection string, and you can retrieve and
' modify any of the elements.
builder.ConnectionString = _
"server=OracleDemo;user id=Mary;" & _
"password=*****"
' Now that the connection string has been parsed,
' you can work with individual items.
Console.WriteLine(builder.Password)
builder.Password = "newPassword"
builder.PersistSecurityInfo = True
' You can refer to connection keys using strings,
' as well. When you use this technique (the default
' Item property in Visual Basic, or the indexer in C#),
' you can specify any synonym for the connection string key
' name.
builder("Server") = "NewDemo"
builder("Load Balance Timeout") = 1000
' The Item property is the default for the class,
' and setting the Item property adds the value to the
' dictionary, if necessary.
builder.Item("Integrated Security") = True
Console.WriteLine(builder.ConnectionString)
Console.WriteLine("Press Enter to finish.")
Console.ReadLine()
End Sub
Private Function GetConnectionString() As String
' To avoid storing the connection string in your code,
' you can retrieve it from a configuration file.
Return "Server=OracleDemo;Integrated Security=True;" & _
"Unicode=True"
End Function
End Module
注解
此类型已弃用,并将在.NET Framework的未来版本中删除。 有关详细信息,请参阅 Oracle 和 ADO.NET。
连接字符串生成器允许开发人员使用 类的属性和方法以编程方式创建语法正确的连接字符串,以及分析和重新生成现有连接字符串。 连接字符串生成器提供与 Oracle 允许的已知键/值对对应的强类型属性。 OracleConnectionStringBuilder 类实现 ICustomTypeDescriptor 接口。 这意味着 类在设计时与 Visual Studio .NET 设计器一起使用。 当开发人员使用设计器在 Visual Studio .NET 中生成强类型数据集和强类型连接时,强类型连接字符串生成器类将显示与其类型关联的属性,并且还将具有可映射已知键的通用值的转换器。
需要在应用程序中创建连接字符串的开发人员可以使用 OracleConnectionStringBuilder 类生成和修改连接字符串。 类 OracleConnectionStringBuilder 还便于管理存储在应用程序配置文件中的连接字符串。
OracleConnectionStringBuilder 对键/值对的有效性进行检查。 因此,此类不能用于创建无效的连接字符串。 尝试添加无效对将引发异常。 类 OracleConnectionStringBuilder 维护同义词的固定集合,如果需要,可以执行所需的转换,以便从同义词转换为相应的已知键名称。 例如,使用 Item[] 属性检索值时,可以指定包含所需键的任何同义词的字符串。 有关可接受同义词的完整列表,请参见 Item[] 属性。
句 OracleConnectionStringBuilder 柄尝试插入恶意条目。 例如,以下代码使用索引器 (默认 Item[] 属性,在 C#) 中正确转义嵌套键/值对。
Dim builder As New System.Data. _
OracleClient.OracleConnectionStringBuilder
builder("Data Source") = "OracleDemo"
builder("Integrated Security") = True
builder("User ID") = "Mary;NewValue=Bad"
System.Diagnostics.Debug.WriteLine(builder.ConnectionString)
System.Data.OracleClient.OracleConnectionStringBuilder builder =
new System.Data.OracleClient.OracleConnectionStringBuilder();
builder["Data Source"] = "OracleDemo";
builder["integrated Security"] = true;
builder["User ID"] = "Mary;NewValue=Bad";
System.Diagnostics.Debug.WriteLine(builder.ConnectionString);
结果是以下连接字符串,它通过将用户 ID 值括在引号中,以安全的方式处理无效值:
Data Source=OracleDemo;Integrated Security=True;User ID="Mary;NewValue=Bad"
构造函数
OracleConnectionStringBuilder() |
已过时.
初始化 OracleConnectionStringBuilder 类的新实例。 |
OracleConnectionStringBuilder(String) |
已过时.
初始化 OracleConnectionStringBuilder 类的新实例。 所提供的连接字符串为实例的内部连接信息提供数据。 |
属性
BrowsableConnectionString |
已过时.
获取或设置一个值,该值指示 ConnectionString 属性是否在 Visual Studio 设计器中可见。 (继承自 DbConnectionStringBuilder) |
ConnectionString |
已过时.
获取或设置与 DbConnectionStringBuilder 相关联的连接字符串。 (继承自 DbConnectionStringBuilder) |
Count |
已过时.
获取属性 ConnectionString 中包含的键的当前数目。 (继承自 DbConnectionStringBuilder) |
DataSource |
已过时.
获取或设置要连接到的 Oracle 数据源的名称。 |
Enlist |
已过时.
获取或设置一个值,该值指示池程序是否在创建线程的当前事务上下文中自动登记连接。 |
IntegratedSecurity |
已过时.
获取或设置一个值,该值指示连接中是否指定了“User ID”和“Password”(当为 |
IsFixedSize |
已过时.
获取一个值,该值指示 OracleConnectionStringBuilder 是否具有固定大小。 |
IsReadOnly |
已过时.
获取一个值,该值指示 DbConnectionStringBuilder 是否为只读。 (继承自 DbConnectionStringBuilder) |
Item[String] |
已过时.
获取或设置与指定的键关联的值。 在 C# 中,此属性为索引器。 |
Keys |
已过时.
获取包含 ICollection 中的键的 OracleConnectionStringBuilder。 |
LoadBalanceTimeout |
已过时.
获取或设置连接被移除之前在连接池中的最短存活时间(以秒为单位)。 |
MaxPoolSize |
已过时.
获取或设置针对此特定连接字符串连接池中所允许的最大连接数。 |
MinPoolSize |
已过时.
获取或设置针对此特定连接字符串连接池中所允许的最小连接数。 |
OmitOracleConnectionName |
已过时.
获取或设置启用 Oracle 早期版本(8.1.7.4.1 以前的版本)中的事务回滚的标志。 |
Password |
已过时.
获取或设置 Oracle 帐户的密码。 |
PersistSecurityInfo |
已过时.
获取或设置一个布尔值,该值指示如果连接是打开的或者一直处于打开状态,那么安全敏感信息(如密码)是否将不作为连接的一部分返回。 |
Pooling |
已过时.
获取或设置一个布尔值,该值指示连接是否加入池中,或者在每次请求连接时,每个连接是否被显式打开。 |
Unicode |
已过时.
获取或设置一个布尔值,该值指示客户端是否支持较高版本的 Oracle 客户端中可用的 Unicode 功能,或者该客户端是否可以识别非 Unicode。 |
UserID |
已过时.
获取或设置在连接到 Oracle 时要使用的用户 ID。 |
Values |
已过时.
获取一个包含 ICollection 中的值的 OracleConnectionStringBuilder。 |
方法
显式接口实现
扩展方法
Cast<TResult>(IEnumerable) |
已过时.
将 IEnumerable 的元素强制转换为指定的类型。 |
OfType<TResult>(IEnumerable) |
已过时.
根据指定类型筛选 IEnumerable 的元素。 |
AsParallel(IEnumerable) |
已过时.
启用查询的并行化。 |
AsQueryable(IEnumerable) |
已过时.
将 IEnumerable 转换为 IQueryable。 |