如何在运行时从便携式库中确定.net平台?

时间:2012-11-01 02:10:14

标签: c# silverlight runtime windows-runtime portable-class-library

具体来说,我希望能够在运行时确定可移植类库代码在Silverlight,WinRT或.NET上运行

我现在最好的想法是:

typeof(object).Assembly.GetCustomAttribute<AssemblyProductAttribute>().Product

在.NET上,它返回“Microsoft®.NETFramework”,在Silverlight上它返回“Microsoft®Silverlight”,但我不确定它是否在WinRT上有所区别,因为我目前还没有使用Windows 8进行开发。

所以我想知道这是否有效或更好的想法。

1 个答案:

答案 0 :(得分:2)

虽然通常很少有充分的理由,但这里有一个类:

http://mvvmlight.codeplex.com/SourceControl/network/forks/onovotny/MvvmLightPortable/changeset/view/f356af74426f#GalaSoft.MvvmLight/Portable/GalaSoft.MvvmLight/Helpers/DesignerPlatformLibrary.cs

我将它用作逻辑的一部分来确定PCL的IsInDesignTime。