次のコードがあり、変更を保存できません。私のメソッドのパラメーターは、データベースで変更したい製品の RefCode を含む文字列です。クエリは、変更されるはずの BaseProduct を取得しています。(コードを単純化して英語で設定しようとしたため、おそらくいくつかの構文エラーが発生しましたが、デバッグ モードのコードでは、DB からすべての情報を取得します)。Linqクエリの「select new」に何か問題がありますか?
public static void UpdateProduct(ViewProduct productToUpdate)
{
using (var context = new my_Entities())
{
var BaseProduct = (from prod in context.Product
where prod.Ref == productToUpdate.BaseProduct.RefPrd
select new ViewBaseProduct
{
RefPrd = prod.Ref,
DescrPrd = prod.DescrPrd,
NormeCe = (bool)prod.NormeCE
}).FirstOrDefault();
if (BaseProduct != null)
{
//BaseProduct.NormeCe = false;
BaseProduct = productToUpdate.BaseProduct;
context.SaveChanges();
}
}
}