经过长时间的不懈努力,终于找到了如何使用EF7数据库优先方法与MVC 6一起使用。以下是具体步骤:
在App.Impl项目中的project.json文件中进行如下配置:
"frameworks": {
"net451": { },
"dnx451": { }
},
"dependencies": {
"EntityFramework.Commands": "7.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer": "7.0.0-rc1-final",
"EntityFramework.MicrosoftSqlServer.Design": "7.0.0-rc1-final"
},
然后在命令提示符中运行以下命令:
dnx ef dbcontext scaffold "Server=ip,port;Database=db;User Id=user;Password=pass;" EntityFramework.MicrosoftSqlServer
我在我的Impl项目中遇到了三个问题:
我有一个专门用于数据的文件夹,其中包含所有与数据库相关的内容,如DbContext、DbClasses。但是,Scaffold会将这些文件创建在根目录下。我该如何指定我想要创建这些文件的文件夹?
在我的工作场所,我可能有一个包含50个表的数据库。但是,如果我只需要访问其中的2个表怎么办?我不想为我的项目添加所有50个表。我该如何指定我想要的表格?
在我的数据库中,我可能有一个名为“Users”的表,因为它是一个包含用户的表。然而,Scaffold应该创建一个类作为“User”,因为它是一个单独的用户,直到它成为列表。我该如何指定要创建的表的名称?
-o Data
或--output-dir Data
允许指定输出目录,-t Users
或--table Users
允许为一个名为 Users 的表创建类。请参见此处。 - Oleg