Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
有没有办法从实体框架表中获取数据类型长度?
如果 EF 和 DB 不同步,我需要在数据库中创建一个表,因此从 EF 获取信息以创建一个脚本来创建表。
EF 与数据库无关。您可以直接调用底层数据库来询问元数据。您还可以为允许的类型(十进制、字符串等)指定您希望在代码优先方案中的长度。EF 首先进行比较以检查代码和数据库匹配。您可以请求/触发迁移。
实际上你不能,因为 EF 将所有 DB 字段映射到原始数据类型 (C#)。因此,最好的解决方案是对每种数据类型进行逻辑思考。例如,将字符串数据类型映射到 nvarchar[max],将 true/false 映射到 bit 或 int....等