我们正在使用 Entity Framework 4.1 - 代码优先。我们需要能够命名我们的约束,而不是让 SQL Server 自动生成它们的名称。这可能吗?
我们需要:PK_Users_UserId, 不是:PK_Users_87329729C
最佳答案
简短的回答是否定的。较长的答案首先是关于代码的含义。代码优先意味着您对数据库不感兴趣 - 您只需让 EF 创建一些数据库,这就是您所需要的。它允许您定义表和列的名称(尤其是在使用现有数据库时很有用),但仅此而已。
如果您需要在这种级别使用数据库,您需要数据库优先的方法。首先滥用代码来命名约束是可能的,但它非常困难和复杂(它需要在创建后删除旧约束并创建新约束 - 例如 here )。
关于entity-framework - Entity Framework 4.1 : Name constraints,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8476035/