我在编辑网格中的数据时遇到麻烦。在这种情况下,不会选择数据。它会引发错误,并且在单击链接http://localhost:39302/FlightInfo/GetFlightStatusById?FId=1462时会引发错误。让我知道其背后的问题。提前致谢。

public JsonResult GetFlightStatusById(int FId)
{
    tblFlightSchedule model = db.tblFlightSchedules.SingleOrDefault(x => x.FId == FId);
    string value = string.Empty;

    value = JsonConvert.SerializeObject(model, Formatting.Indented, new JsonSerializerSettings
    {
        ReferenceLoopHandling = ReferenceLoopHandling.Ignore
    });

    var jsonResult = Json(value, JsonRequestBehavior.AllowGet);
    jsonResult.MaxJsonLength = int.MaxValue;
    return jsonResult;
}


JS:

function EditFlightRecord(FId) {
    debugger;
    var url = "/FlightInfo/GetFlightStatusById?FId=" + FId;
    $("#ModalTitle").html("Update Flight Status");
    $("#MyModal").modal();
    $.ajax({
        type: "GET",
        url: url,
        success: function (data) {
            var obj = JSON.parse(data);
            $("#FId").val(obj.FId);


发生以下错误:
mscorlib.dll中发生类型'System.OutOfMemoryException'的异常,但未在用户代码中处理。
由于内存不足异常,功能评估被禁用。

最佳答案

在您的web.config中添加以下设置。并尝试针对64位构建代码

<gcAllowVeryLargeObjects
   enabled="true" />


默认情况下,它的行为是这样的。我认为这就是为什么您会出错

从文档:


<gcAllowVeryLargeObjects
  enabled="true|false" />

  
  [...]
  
  值说明
  
  false不启用总大小大于2 GB的阵列。这是默认值。
  
  true在64位平台上启用了总大小大于2 GB的阵列。

关于c# - 系统内存不足C#,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51134501/

10-15 09:47