2

我的项目中有一个 .udl(通用数据链接)文件。现在我想创建一个指向这个特定文件的 SQL 连接。SqlConnection 对象需要一个连接字符串,我们如何使用 .UDL 文件构建 SqlConnection?

4

2 回答 2

2

从 MSDN 网站:

可以在通用数据链接 (UDL) 文件中为 OleDbConnection 提供连接信息;但是你应该避免这样做。UDL 文件未加密,并以明文形式公开连接字符串信息。由于 UDL 文件是应用程序的基于文件的外部资源,因此无法使用 .NET Framework 对其进行保护。SqlClient 不支持 UDL 文件。

看看这里:

http://social.msdn.microsoft.com/Forums/en-US/sqlnetfx/thread/0bb40f32-86f4-4b6f-a2e0-bc2bdcf07b63

于 2013-05-03T08:22:25.833 回答
0

另一种方法是将 OleDBConnection 转换为 SQLConnection。

private static string CONNECTION_NAME = "\\conection.udl";

 private static SqlConnection CreateSqlConnection(OleDbConnection udlInfo)
        {
            try
            {   
                string CONNECTION_STRING = $"Database={udlInfo.Database};Server={udlInfo.DataSource};Integrated Security=True;connect timeout = 30";
                var connection = new SqlConnection(CONNECTION_STRING);
                connection.Open();
                return connection;
            } catch
            {
                 Console.WriteLine($"{CONNECTION_NAME} Not found");

                return null;
            }

        }

public static SqlConnection GetSqlConnection()
        {
            var udlInfo = new OleDbConnection($"File Name={Application.StartupPath}{CONNECTION_NAME}");

            return CreateSqlConnection(udlInfo);
        }
于 2017-06-24T21:47:52.107 回答