我有一个面向 .net 4 的类库,并通过 Mono 在不同平台上使用。我现在想移植它以供 Windows 8 使用。我知道名称一直在变化,但目前在 VS2012 中称为“类库(Windows 商店应用程序)”。
我最初尝试将所有内容移植到“可移植类库”,但事实证明这太困难了,因为有些东西根本没有适用于所有目标平台的通用方法,而其他受支持的东西根本没有可用于编译器。
因此,我创建了一个 Windows Store 类库并创建了指向我的标准类库的现有文件的链接,因此更新一次将同时更新两者。我计划使用预处理指令在两个类库 EG 之间进行更改
#if NETFX_CORE
Task.Delay(someTime);
#else
new System.Threading.ManualResetEvent(false).WaitOne(sometime);
#endif
我的问题是,如果这种方法似乎是一种明智的方法?我有相同的默认命名空间和程序集名称。这会对我的编译器造成问题吗?这些程序集面向不同的平台,因此永远不会在同一个应用程序中一起使用,但它们都位于 Visual Studio 中的同一个解决方案中。