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

5 c# application-data console-application uwp desktop-bridge

我正在尝试遵循UWP 与桌面扩展 \xe2\x80\x93 第 2 部分UWP 和 WinForms 桌面桥调用进程并传递参数。此示例 Console Program.cs代码包含参数字符串:

\n\n
 string parameters = ApplicationData.Current.LocalSettings.Values["parameters"] as string;\n
Run Code Online (Sandbox Code Playgroud)\n\n

但该名称ApplicationData在当前上下文中不存在,我试图找出是否遗漏了一些参考或者它是 C# 的不同版本

\n\n

我不确定即使它是它所需要的,但添加引用Windows.Foundation.UniversalApiContract.windmd会引发另一个错误Values

\n\n
\n

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

\n
\n

Mar*_*und 6

@Nico Zhu - MSFT 是正确的,但我也建议替代方法,从长远来看,这可能会让您的生活更轻松 - 用于桌面应用程序的 UWP API 现在也通过NuGet 作为包进行分发,该包负责引用正确的库为你。

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

Install-Package Microsoft.Windows.SDK.Contracts -Version 10.0.18362.2002-preview
Run Code Online (Sandbox Code Playgroud)

有关详细信息,请参阅NuGet 页面。


Nic*_*SFT 4

如果您想使用ApplicationData类,请Windows.winmdC:\Program Files (x86)\Windows Kits\10\UnionMetadata\10.0.17134.0\Windows.winmd. 然后添加 Windows.Storage命名空间。

详细步骤

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