如何将scaffold-dbcontext转换到不同的文件夹?

时间:2017-11-06 16:20:42

标签: c# entity-framework asp.net-core ef-code-first visual-studio-2017

我们可以运行以下命令来创建项目中的上下文和模型:

Scaffold-DbContext -Connection "Data Source=somedatasource.com;Initial Catalog=mydb;Integrated Security=False;User Id=user;Password=pass;MultipleActiveResultSets=True" -Provider Microsoft.EntityFrameworkCore.SqlServer -Tables PrdSalesRegion -Context SalesRegionContext

我们如何为上下文和表格指定不同的输出文件夹?

当我尝试这样做时:

Scaffold-DbContext -Connection "Data Source=somedatasource.com;Initial Catalog=mydb;Integrated Security=False;User Id=user;Password=pass;MultipleActiveResultSets=True" -Provider Microsoft.EntityFrameworkCore.SqlServer -Tables Models/PrdSalesRegion -Context Context/SalesRegionContext

请注意,唯一的变化是:

-Tables Models/PrdSalesRegion -Context Context/SalesRegionContext

然后我得到了这个输出:

  

传入的上下文类名称Context / SalesRegionContext不是   有效的C#标识符。

我们如何为上下文和表格指定不同的输出文件夹?

1 个答案:

答案 0 :(得分:4)

我添加了标志-o <DIR>,这对我有用。此外,我使用-f标志覆盖现有文件,同时我使用新字段更新现有模型。

我的命令如下:

Scaffold-DbContext "Host=127.0.0.1;Database=dbname;Username=postgres;Password=test12345"Npgsql.EntityFrameworkCore.PostgreSQL -o Entities -f

希望这有帮助