将odbc连接字符串转换为SqlClient

本文关键字:SqlClient 转换 字符串 odbc 连接 | 更新日期: 2023-09-27 18:18:33

我们有各种各样的应用程序连接到Sql server,有些使用odbc,有些通过SqlClient,因此导致两种格式的字符串(!)。

我试图巩固字符串,所以有一个标准的方式,我可以将它们存储在odbc和转换成SqlClient为那些需要它们的应用程序?

将odbc连接字符串转换为SqlClient

OK,我已经创建了一个(目前)快速和肮脏的函数下面使用ConnectionStringBuilder,但我相信一定有一个更优雅的方式做到这一点…(?)这看起来有点臭。

    /// <summary>
    /// Returns a SQLClient Connection String from an ODBC string 
    /// </summary>
    private string ODBCToSqlClient(string ODBCConnectionString)
    {           
        OdbcConnectionStringBuilder builder = new OdbcConnectionStringBuilder(ODBCConnectionString);                        
        if (builder.ContainsKey("Uid"))            
        {
            //Standard Connection
            return string.Format("Server={0};Database={1};User Id={2};Password={3};", builder["Server"], builder["Database"], builder["uid"], builder["pwd"]);
        }
        else 
        {
            //Trusted Connection
            return string.Format("Server={0};Database={1};Trusted_Connection=True;", builder["Server"], builder["Database"]);                
        }
    }