我将东西保存在一个独立的存储文件中(使用类 IsolatedStorageFile)。它运行良好,当我从 GUI 层调用DAL层中的保存和检索方法时,我可以检索保存的值。但是,当我尝试从同一项目中的另一个程序集中检索相同的设置时,它给了我一个 FileNotFoundException。我做错了什么?这是一般概念:
public void Save(int number)
{
IsolatedStorageFile storage = IsolatedStorageFile.GetMachineStoreForAssembly();
IsolatedStorageFileStream fileStream =
new IsolatedStorageFileStream(filename, FileMode.OpenOrCreate, storage);
StreamWriter writer = new StreamWriter(fileStream);
writer.WriteLine(number);
writer.Close();
}
public int Retrieve()
{
IsolatedStorageFile storage = IsolatedStorageFile.GetMachineStoreForAssembly();
IsolatedStorageFileStream fileStream = new IsolatedStorageFileStream(filename, FileMode.Open, storage);
StreamReader reader = new StreamReader(fileStream);
int number;
try
{
string line = reader.ReadLine();
number = int.Parse(line);
}
finally
{
reader.Close();
}
return number;
}
我已经尝试使用所有 GetMachineStoreFor* 范围。
编辑:由于我需要几个程序集来访问文件,因此似乎不可能使用隔离存储,除非它是ClickOnce应用程序。