接触Linq不久,虽然其生成model类方便,但封装的操作数据库的方法,就像和数据库隔了层纱,没有办调试到具体的sql语句
数据访问层写了一个插入方法如下
public int addClass(Model.G_class M_class)
{
Table<Model.G_class> table = DB.GetTable<Model.G_class>();
try
{
table.InsertOnSubmit(M_class);
DB.SubmitChanges();
return 1;
}
catch
{
return 0;
}
}
G_class是一个班级表,主键是class_id,通过前台传来的实体数据对象M_class,如果M_class的class_id值没有在数据库中,那么插入没有问题,
而一旦class_id已经存在了,那就会插入失败,DB.SubmitChanges();抛出异常为“不能添加其键值已在使用中的实体”,以后再从前台传来的实体数据
无论class_id存在与否都会抛出这个异常,网上没有找到类似问题,最后只好自己写了一个id检测方法
publi