Entity Framework使用指令放置背后有原因吗?

时间:2018-05-01 15:36:18

标签: c# entity-framework

如果我添加一个新的迁移(EF代码优先),我的新类/ db迁移的结构看起来有点像:

namespace MySolutionNamespace.MyProjectNamespace
{
    using System.Data.Entity.Migrations;

    public partial class MyMigration : DbMigration
    {
        //....
    }
}

using语句在 中的原因是否在任何地方都记录了名称空间?

1 个答案:

答案 0 :(得分:2)

关于此主题,有几个关于SO的好帖子/答案。以下是解释在文件顶部命名空间名称时如何可能遇到问题:https://stackoverflow.com/a/151560/1617161

以下是另一个讨论潜在问题:https://stackoverflow.com/a/1342873/1617161

我总是将它们放在文件的顶部,如果您的命名空间和类非常特定于应用程序,这似乎是安全的;即。不会与其他Dlls发生冲突。

我认为特定于Entity Framework,似乎他们试图阻止与System.Data.Entity.Migrations命名空间中的类冲突。放置在命名空间内可以减少破坏某人的代码的可能性,该代码的类名与System.Data.Entity.Migrations命名空间中的类相同。