之所以发生这种情况,是因为您使用的是Dapper扩展程序,该程序已实现了
InsertCRUD扩展方法。理想情况下,可以使用简单的方法来实现
con.Execute
在Dapper中,但是由于您要传递一个对象并通过扩展名自动创建一个插入查询,因此需要帮助它理解它,它是给定产品实体的主键,因此进行以下修改将有所帮助:
[Key]public string prodId {get;set;}其中Key属性应在中
Dapper Extension或中实现
Component Model。
或者,您可以重命名
prodId为
Id,这将自动使其成为密钥。还要检查以下链接,在这里您可以为实体创建一个单独的映射器,从而定义密钥,无论您使用哪种情况


![Dapper.SimpleCRUD插入/更新/获取失败并显示消息``实体必须至少具有一个[Key]属性''。 Dapper.SimpleCRUD插入/更新/获取失败并显示消息``实体必须至少具有一个[Key]属性''。](http://www.mshxw.com/aiimages/31/634531.png)
