Tôi đã tạo ứng dụng bảng điều khiển và tệp app.config và tệp Connections.config. Các file app.config có một nguồn tài sản ConnectionString trỏ đến các Connections.configĐọc chuỗi kết nối từ tệp cấu hình bên ngoài
Khi tôi cố gắng đọc các chuỗi kết nối trong việc áp dụng, tôi nhận được một ConfigurationErrorException
Đây là phương pháp chính của tôi.
static void Main(string[] args)
{
var settings = ConfigurationManager.ConnectionStrings;
if (settings != null)
{
foreach (ConnectionStringSettings setting in settings)
{
Console.WriteLine(setting.ConnectionString);
}
}
}
App.config nộp nộp
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings configSource="Connections.config"></connectionStrings>
</configuration>
Connections.config
<?xml version="1.0" encoding="utf-8" ?>
<connectionStrings>
<add name="SQLDBConnecion"
providerName="System.Data.ProviderName"
connectionString="" />
</connectionStrings>
Ở đây tôi quan sát thấy hai điều. Đầu tiên: Nếu tôi chỉ định configSource Tôi không thể đọc chuỗi kết nối (ném ngoại lệ.)
Thứ hai: Nếu tôi đặt cùng một chuỗi kết nối trong tệp App.config và cố đọc thì mã đang hoạt động nhưng nhận được hai kết nối chuỗi (mà nghĩa vụ phải được trở lại chỉ có một mà là chuỗi rỗng) chuỗi kết nối đầu tiên là chuỗi kết nối SQLEXPRESS như thế này
data source=.\SQLEXPRESS;Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true
chuỗi kết nối thứ hai nó trở về là chuỗi rỗng (Điều này được dự kiến).
Tôi muốn đọc chuỗi kết nối từ tệp bên ngoài như trong trường hợp của tôi. Làm thế nào để làm điều đó? Tôi đang thiếu gì ở đây?
Xây dựng Hành động không bắt buộc, Nếu Sao chép vào Thư mục Đầu ra được đặt thành * sao chép luôn * hoặc * sao chép nếu mới hơn *, hãy tạo hành động mặc định thành Nội dung. Nếu không được trả lời tốt - +1 –
Điểm tốt, tôi không biết điều đó. –