如何测试一个类型是否是抽象类型?

O.O*_*O.O 1 c# unit-testing windows-store-apps .net-4.6

IsAbstract 似乎不存在。它去哪儿了?

[TestMethod]
public void IsAbstractBaseClass()
{
  Type type = typeof(ViewModelBase);
  Assert.IsTrue(type.IsAbstract);
}
Run Code Online (Sandbox Code Playgroud)

fcu*_*sta 8

对于 Windows 应用商店应用程序,您可以使用 TypeInfo:

using System.Reflection;
type.GetTypeInfo().IsAbstract;
Run Code Online (Sandbox Code Playgroud)

Windows 应用商店应用程序的 .NET 不支持 IsAbstract。如果您检查此处的方法:http://msdn.microsoft.com/en-us/library/system.type (v=vs.110).aspx,您将看到 Windows 应用商店应用程序没有相应的图标。