2010-08-05 18 views
3

我正在使用IsolatedStorage来保存对象,但有时我需要手动清除此目录中的文件。 当我坚持这些文件时,我想将目录的物理位置写入控制台。似乎没有可返回此信息的可访问属性。 我该怎么做?如何确定IsolatedStorageFile根目录的位置

这里是我的残缺码:

using (var store = IsolatedStorageFile.GetMachineStoreForAssembly()) 
{ 
    Console.WriteLine("Persisting Hotel to {0}", store.<<INSERT APPROPRIATE PROPERTY>>); 
} 

回答

3

嗯,我没有试过,但我没有找到一个链接(不容易找到),理应展示了如何做到这一点:http://msmvps.com/blogs/angelhernandez/archive/2008/10/04/retrieving-file-path-from-isolatedstorage.aspx

基本上代码的重点线似乎是:

fileName = isoStore.GetType.GetField("m_RootDir",Reflection.BindingFlags.NonPublic or Reflection.BindingFlags.Instance).GetValue(isoStore).ToString 

我不知道,如果任何特殊权限必须设置为得到这个工作。

好了,也找到了相关的计算器:Can I get a path for a IsolatedStorage file and read it from external applications?

1

试试这个:

using System.IO.IsolatedStorage; 
using System.Reflection; 

var store = IsolatedStorageFile.GetMachineStoreForAssembly(); 
var pathName = store.GetType().GetField("m_RootDir", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(store).ToString();