0
データベースからのデータを使用してASP.NET MVC APIを作成します。これを行うにはLINQを使用します。私は文脈を作り、delete
が偽であるすべての関税を得る。私はデバッグObjectContextインスタンスがLINQを使用して削除されていて、JSON結果を取得できません。
[HttpGet]
public JsonResult Index()
{
List<Tariff> temp = new List<Tariff>();
using (Context context = new Context())
{
temp = context.Tariff.Where(t => !t.Delete).ToList<Tariff>();
}
return Json(temp, JsonRequestBehavior.AllowGet);
}
、一時はSystem.Data.Entity.DynamicProxies.Tariff_...
代わりのMyNamespace.Models.Tariff
のリストが含まれています。私が続けると、この例外が表示されます:
ObjectContext
インスタンスは廃棄され、接続が必要な操作には使用できなくなります。
私は間違っていますか?
おそらくレイジーローディングが有効になっており、関連するコレクションのタイプが「タリフ」であり、シリアル化中に列挙されている可能性があります。 'Context'インスタンスが破棄された後にシリアライゼーションが発生すると、例外がスローされます – Igor
@Igor:どうすれば無効にできますか? –
'DbContext.Configuration.LazyLoadingEnabled = false;' – Igor