如果我添加一个新的迁移(EF代码优先),我的新类/ db迁移的结构看起来有点像:
namespace MySolutionNamespace.MyProjectNamespace
{
using System.Data.Entity.Migrations;
public partial class MyMigration : DbMigration
{
//....
}
}
using
语句在 中的原因是否在任何地方都记录了名称空间?
答案 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命名空间中的类相同。