我是Dapper的新手,试图编写一些代码来测试Dapper.Contrib。
[Dapper.Contrib.Extensions.Table("Cat")]
public class Cat
{
[Dapper.Contrib.Extensions.Key]
public string catid {get;set;}
public string catName {get;set;}
}
...
Cat cat = new Cat(){catid="somecharmaybe", catName="testcat"}
conn.Insert(cat);
当我运行应用程序时,抛出以下异常
无法将空值插入主键catid
有人能给我一些建议吗?
答案 0 :(得分:0)
无法将空值插入主键catid
错误说你不能在catid上插入空值,因为dapper明白这是由数据库生成的身份密钥来解决这个问题使用DapperExtension
public class Cat
{
public string catid {get;set;}
public string catName {get;set;}
}
public class CatMap : ClassMapper<Cat>
{
public CatMap()
{
Table("Cat")
Map(s=>s.CatId).Key(KeyType.Assigned);
AutoMap();
}
}
我希望它有所帮助,如果有人有更好的解决方案,请在此发帖谢谢。