学习.netcore EF DbFirst 的时候发现一个问题:
动态生成Model文件后发现数据库少了一个字段,然后进行添加。
之后更新实体类,使用以下代码:
Scaffold-DbContext "Server=.;Database=school;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Model
发现报错了:
报错的代码:The following file(s) already exist in directory c\\xxx.cs Use the Force flag to overwrite these files.
翻译是:
目录C中已存在以下文件:c\xxx.cs:学校背景.cs,学生.cs. 使用Force标志覆盖这些文件。
于是在该语句后面添加了Force
Scaffold-DbContext "Server=.;Database=school;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Model Force
然后又报错了:
Scaffold-DbContext : 找不到接受实际参数“Force”的位置形式参数。
最后查资料才发现,Force 前缺少了‘-’符号。然后再次输入(资料来源(微软官网: Entity Framework Core 工具参考-.NET Core CLI) ):
Scaffold-DbContext "Server=.;Database=school;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Model -Force
完美解决问题。效果预览: