我创建了一个windowsPhone应用程序。 我通过提取与IsolatedStorage和。相关的一些部分来对代码进行分解 创建了一个新的应用程序,允许将其作为库进行测试。
所以我有一个与我的自定义库关联的windowsphone应用程序。 还有一个应用程序控制台来测试我的自定义库 当我启动我的应用程序控制台时,我获得了与“无法确定调用者的应用程序标识”相对应的问题。这是因为自定义库尝试从localstorage获取信息。 http://social.msdn.microsoft.com/Forums/windows/en-US/90780a13-7830-46d0-bc7f-1f256eeebde7/unable-to-determine-application-identity-of-the-caller?forum=winformssetup 所以我的假设是我需要使用Dependancy Injection来加载或不加载与隔离存储相关的代码的一部分,并在工厂类中添加一些if条件,允许重定向到具有独立存储的类。
控制台应用
static void Main(string[] args)
{
try
{
Root rt = new Root();
rt.TestingRss(); //obtain the issue
Console.ReadLine();
}
catch (Exception ex)
{
throw ex;
}
}
LibP for WindowsPhone
public class ConfCustom
{
private static volatile ConfCustom instance;
private static object syncRoot = new Object();
public IsolatedStorageSettings Settings;
private ConfCustom()
{
Settings = IsolatedStorageSettings.ApplicationSettings;
}
public void Run()
{
}
public static ConfCustom Instance
{
get
{
if (instance == null)
{
lock (syncRoot)
{
if (instance == null)
{
instance = new ConfCustom();
}
}
}
return instance;
}
}
}
是否清楚? 你的观点是什么?
祝你好运, 亚历山大