c# - EF Core Power Tools 逆向工程师在不同 SQL 服务器上的模型上创建不同的属性
问题描述
我正在使用 EF Core Power Tools 通过在 Visual Studio .Net 中选择 EF Core Power Tools -> Reverse Enegineer 来生成我的模型。
我仍在使用 EF Core 2.x,因此我从第一个对话框中删除了复选标记,您可以在其中选择使用 EF Core 3.x。
在最后一个选项对话框中,我选择:
- 使用 DataAnnotation 属性来配置模型。
- 使用 Handlebars 模板 (C#) 自定义代码。
我正在为我的数据库使用 SQL Server。
我的问题是,当我在本地数据库上运行工具时,生成的模型与另一台服务器上的数据库版本不同。
不同之处在于生成的 POCO 类。在我的本地数据库上,生成了以下类:
public partial class ExampleTable
{
[Key]
public byte Id { get; set; }
public string Tekst { get; set; }
}
当我针对另一个数据库运行该工具时,代码如下所示:
[Table("ExampleTable", Schema = "dbo")]
public partial class ExampleTable
{
[Key]
public byte Id { get; set; }
public string Tekst { get; set; }
}
为什么该工具生成的模型在一个数据库的 dbo 表上具有属性而在另一个数据库上没有属性?
解决方案
正如@Karan 所说,这是因为用于脚手架的用户没有 dbo 作为默认模式。
推荐阅读
- c - 制作按钮打开chipKIT基本I/O屏蔽和Uno32板的LED灯
- html - 高于其他离子 4 的元素
- mongodb - 如何将对象添加到mongodb中的数组
- python - TensorFlow 对 python 3.7.4 的支持
- python - MoviePy 不显示非英文字符
- java - 为什么我的包是空对象引用?
- python - 编写一个 Python 程序,请求一个单词(小写字母)作为输入并将该单词翻译成 Pig Latin
- php - 在教义中设置@JoinColumn 名称
- javascript - JQuery下拉单击功能在asp.net mvc中不起作用
- codeigniter - 如何在codeiginter中上传多张照片?