我收到此运行时异常
无法将“System.Data.SqlTypes.SqlDecimal”类型的对象强制转换为 输入'System.String'。
如何修复我的代码以获得没有例外的结果?
ProductsDataContext db = new ProductsDataContext();
var matchedproduct = db.GetTable<product>().SingleOrDefault(p =>p.ProductID==productID);
if (matchedproduct != null)
product.ProductName = txtpname.Text;
db.SubmitChanges();
答案 0 :(得分:3)
如果您没有收到编译时错误,则因为您的dbml无法准确描述数据库中的列。您的对象认为它是一个字符串,但它在数据库中显然是一个小数。您应该在dbml编辑器中更新它。然后,当您设置产品名称时,您必须从文本中解析出小数值。