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

How to test if a type is abstract?

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

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

我们的存储库需要使用基本存储库摘要 class。我验证符合我测试中的一行

Assert.IsTrue(instanceToBeTested is MyAbstractClassHere);

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

using System.Reflection;
type.GetTypeInfo().IsAbstract;

IsAbstract 在 .NET 中不受 Windows 商店应用程序的支持。 如果你在这里检查方法:http://msdn.microsoft.com/en-us/library/system.type(v=vs.110).aspx 您会看到 Windows 应用商店应用没有对应的图标。