我有一个使用后台任务的Windows应用商店应用。后台任务存储在Windows运行时组件项目中。 (这种结构似乎是使后台任务有效的唯一方法。)
在后台任务项目中,我有一些外部可见的公共方法,它们的返回/参数类型是我自己的类,而不是Windows运行时类。
例如:
public MyClass DoSomething()
{
return null;
}
当我构建时,我会收到与以下方法相关的错误:
方法'X'返回'Y',它不是有效的Windows运行时类型。暴露给Windows运行时的方法必须只返回Windows运行时类型。
和
方法'T'具有'W'类型的参数'U'。 “W”不是有效的Windows运行时参数类型。
我可以理解错误的含义,但我没有想到一个好的方法可以构建我的代码,以便满足这些要求。
以下是我已经考虑过的一些事情:
Tuple
或多个参数,但这看起来很乱,结构化程度较低,维护性较差。我强烈反对这种类型的编程。答案 0 :(得分:6)
我能够通过隔离Windows组件项目中的后台任务并将可重复使用的Windows运行时相关代码移动到Windows应用商店类库项目中来完成这项工作。