小编myk*_*ola的帖子

如何使用.NET Reflection查找类的所有直接子类

考虑以下类层次结构:基类A,继承自A的类B和C以及继承自B的类D.

public class A     {...}
public class B : A {...}
public class C : A {...}
public class D : B {...}
Run Code Online (Sandbox Code Playgroud)

我可以使用以下代码来查找A的所有子类,包括D:

var baseType = typeof(A);
var assembly = typeof(A).Assembly;
var types = assembly.GetTypes().Where(t => t.IsSubclassOf(baseType));
Run Code Online (Sandbox Code Playgroud)

但是我只需要找到A的直接子类(例子中的B和C)并排除所有不直接从A继承的类(例如D).知道怎么做吗?

.net c# reflection

22
推荐指数
2
解决办法
8140
查看次数

如何在Entity Framework/SQL Server 2008项目中切换到datetime2

我们有一个Entity Framework 5.0项目,它使用SQL Server 2008进行代码优先迁移,但所有日期属性都是作为datetime列在数据库中创建的- 而不是datetime2.

是否可以使用将更新datetime数据库中所有列的添加迁移来创建迁移?有没有其他简单的方法切换到datetime2任何地方?

.net sql-server ef-migrations entity-framework-5

15
推荐指数
2
解决办法
1万
查看次数