2010-11-17 24 views
5

Khi sử dụng mã này, tôi nhận được lỗi trên:SecurityException là unhandled khi sử dụng cô lập lưu trữ

 var userSettings = new UserSettings() 
     { 
      Username = TextBox_Username.ToString(), 
      Password = TextBox_Password.ToString(), 
      Operator = OperatorList.O2 
     }; 

     var settings = IsolatedStorageSettings.ApplicationSettings; 
     settings.Add("UserSettings", userSettings); 
     settings.Save(); 

Tôi không chắc chắn lý do tại sao? Tuy nhiên.

Trả lời

12

Đã sửa lỗi. Bất kỳ lớp được lưu trữ nào cần được đánh dấu là lớp đánh dấu công khai bên trong không được phép. Vấn đề xảy ra vì C# không mặc định phạm vi công cộng với các lớp mới.

+3

Cảm ơn bạn đã đăng câu trả lời! – theChrisKent

+2

Hãy coi chừng: bạn không nên gọi Lưu một cách rõ ràng. Tài liệu nói "Trên Silverlight cho Windows Phone, IsolatedStorageSettings() không phải là luồng an toàn và ném một IsolatedStorageException khi Save() được gọi." (đọc tại đây: http://msdn.microsoft.com/en-us/library/system.io.isolatedstorage.isolatedstoragesettings(v=VS.95).aspx). Ngay cả khi nói ngoại lệ không phải luôn luôn được nâng lên, tôi sẽ tránh nó. Anyways ApplicationSettings được lưu tự động khi tắt ứng dụng. –

+1

Và cũng cần lưu ý đến những người định cư bất động sản. Họ không nên riêng tư – Pashec

Các vấn đề liên quan