2012-05-12 8 views
2

を更新し、私は 型「可能System.String」にタイプ「System.Data.SqlTypes.SqlDecimal」のオブジェクトをキャストすることができません。この実行時例外LINQのツーSQLのDataContextは

を取得しています。

例外を除いて結果を得るためにコードを修正するにはどうすればよいですか?

ProductsDataContext db = new ProductsDataContext(); 

var matchedproduct = db.GetTable<product>().SingleOrDefault(p =>p.ProductID==productID); 

if (matchedproduct != null)    
    product.ProductName = txtpname.Text; 

db.SubmitChanges(); 

答えて

3

コンパイル時エラーが発生していない場合は、dbmlがデータベースの列を正確に表していないためです。あなたのオブジェクトは文字列だと思っていますが、明らかにデータベースの小数です。 dbmlエディタで更新する必要があります。次に、製品名を設定するときに、テキストから10進値を解析する必要があります。

関連する問題