2010-08-10 14 views
5
var values = new NameValueCollection 
{ 
    { "key", ConfigurationSettings.AppSettings["API-Key"].ToString() }, 
    { "image", Convert.ToBase64String(File.ReadAllBytes(photo.ToString())) } 
}; 

Cách mới để sử dụng tệp app.config là gì?ConfigurationSettings.AppSettings đã lỗi thời, cảnh báo

+0

Bản sao có thể có của [Tên 'Trình quản lý cấu hình' không tồn tại trong ngữ cảnh hiện tại] (http://stackoverflow.com/questions/1274852/the-name-configurationmanager-does-not-exist-in-the-current -context) – Matt

Trả lời

16

Lớp ConfigurationManager trong System.Configuration:

ConfigurationManager.AppSettings 

ConfigurationManager.ConnectionStrings 

Vì vậy, mã của bạn sẽ thay đổi để:

var values = new NameValueCollection 
{ 
    { "key", ConfigurationManager.AppSettings["API-Key"] }, 
    { "image", Convert.ToBase64String(File.ReadAllBytes(photo.ToString())) } 
}; 

Hãy chắc chắn rằng bạn thêm một tham chiếu đến System.Configuration cùng với báo cáo kết quả using cho System.Configuration.

+0

Nếu bạn không thể thấy ConfigurationManager, vui lòng tham khảo liên kết sau: http://stackoverflow.com/questions/1274852/the-name-configurationmanager-does-not-exist-in-the-current-context –

6

Sử dụng các lớp System.Configuration.ConfigurationManager

string ServerName = System.Configuration.ConfigurationManager.AppSettings["Servername"]; 

Chỉnh sửa - thêm

Lưu ý, bạn có thể phải thêm một tham chiếu đến System.Configuration .dll. Ngay cả khi bạn có thể nhập không gian tên mà không có tham chiếu, bạn sẽ không thể truy cập lớp này trừ khi bạn có tham chiếu.

+0

Điều đó thực sự lạ, không gian tên System.Configuration được nhập khẩu, nhưng lớp ConfigurationManager vẫn hiển thị màu đỏ. Nó giống như nó không phải là một phần của không gian tên. Bất kỳ đề xuất? Tôi đã thử nhấp chuột phải và giải quyết, nhưng không có súc sắc. –

+1

Xem ghi chú đã thêm của tôi. Điều đó đã ném tôi lần đầu tiên. Tôi nghĩ tôi mất nửa tiếng để tìm ra. – David