You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS添加Controller报Boilerplate错误及GroupToContactLink主键异常解决问询

问题原因

该错误本质是Visual Studio的控制器生成脚手架在内存加载EF模型时,部分场景下无法正确读取OnModelCreating中通过Fluent API配置的复合主键,并非你编写的Fluent API配置本身存在逻辑错误。

修复步骤

  • 给GroupToContactLink实体的三个复合主键字段加上显式的主键顺序注解,脚手架工具会优先读取属性上的注解,避免读取Fluent API配置失败的问题。修改后的字段代码如下:
[Required]
[Key, Column(Order = 0)]
public int ContactId { get; set; }

[Required]
[Key, Column(Order = 1)]
public int GroupId { get; set; }

[Required]
[Key, Column(Order = 2)]
public int LinkTypeId { get; set; }
  • 可选操作:保持你原有OnModelCreating中的Fluent API配置不变,避免后续EF迁移出现配置冲突,两种主键配置方式可以共存不会触发报错。
  • 清理解决方案,删除项目根目录下的bin和obj文件夹,重启Visual Studio后重新尝试添加控制器,此时脚手架即可正常识别复合主键配置。

如果以上操作完成后仍然报错,可以跳过脚手架生成流程,手动创建控制器类、编写对应的业务逻辑和视图,避开脚手架的内存模型检测bug即可。

内容的提问来源于stack exchange,提问作者Hecatonchires

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 22:27:02