在控制台中使用带有UWP参数的ApplicationData

时间:2019-07-04 02:28:51

标签: c# uwp console-application desktop-bridge application-data

我正在尝试遵循UWP with Desktop Extension – Part 2的UWP和WinForms桌面桥调用过程并传递参数。此示例控制台Program.cs代码包含参数字符串:

 string parameters = ApplicationData.Current.LocalSettings.Values["parameters"] as string;

但是名称ApplicationData在当前上下文中不存在,如果您错过了一些参考或者它是C#的其他版本,我正在尝试查找

我不确定这是否是必需的,但是添加引用Windows.Foundation.UniversalApiContract.windmd会引发Values的另一个错误:

  

错误CS0012类型“ IPropertySet”是在以下程序集中定义的:   未引用。您必须添加对程序集的引用   'Windows.Foundation.FoundationContract

2 个答案:

答案 0 :(得分:2)

如果要使用ApplicationData类,请在Windows.winmd中的C:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.17134.0\Windows.winmd处添加。然后添加Windows.Storage命名空间。

详细步骤

右键单击项目引用->添加引用->浏览(文件类型为所有文件)->选择 Windows.winmd

答案 1 :(得分:2)

@Nico Zhu-MSFT是正确的,但我也建议您使用其他方法,从长远来看,这可能会使您的生活更轻松-桌面应用程序的UWP API现在也通过NuGet as a package分发,它可以解决为您参考正确的库。

在撰写本文时它处于预览状态,因此您可以按以下步骤安装:

Install-Package Microsoft.Windows.SDK.Contracts -Version 10.0.18362.2002-preview

有关更多信息,请参见NuGet page