Entity Framework 6 - 数据库优先 - 缺少字符串长度属性

Entity Framework 6 - Database First - String Length Attribute missing

我首先使用 EF6 数据库来创建我的 EF 6 数据库上下文。创建的 POCO 缺少 属性 属性,例如“StringLength”或“Required”。我之前参与过为我创建这些项目的项目,并认为这是基本功能。在哪里可以找到有关如何配置此行为的文档?

我从一个新的 Winform 应用程序向我的项目添加了一个新的 ADO.Net 实体数据模型,并按照“从数据库进行 EF 设计”的向导进行操作。

环境

我知道发生了什么事。默认 Scaffold-DBContext's parameter DataAnnotations defaults to use Fluent API。 Fluent API 在上下文的 OnModelCreating 方法中使用函数链配置属性。 DataAnnotations 参数是一个开关,因此只需指定该参数即可将引擎更改为使用数据注释。

这很重要,因为我也在 E​​F 之外使用 EF 模型。将它们与 ASP.net 一起使用有很大好处,因为它将在请求期间使用注释来验证模型。