Asp.Net MVC отправляет JSON как строку, всегда усеченную на сервере

1

Я отправляю данные json в виде строки на сервер в asp.net mvc, как показано ниже:

var dto = JSON.stringify(transObj);
                    console.log(String(dto));
$.ajax({
                    url: "/home/activity",
                    dataType: 'html',
                    data: "obj=" + String(dto) + "&trackedFromEntityTypeId=" + trackedFromEntityTypeId + "&trackedFromEntityType=" + trackedFromEntityType,
                    type: 'POST',
                    success: function (data) {
                        var jsonResult = JSON.parse(data);
                        if (jsonResult.status) {
                            bootbox.alert(jsonResult.message, function () {
                                window.location.href = "/";
                            });
                        } else {
                            displayError('Something bad happend. ' + data.message);
                        }
                    },
                    error: function (error) {
                        displayError('Something bad happend. ' + error.statusText);
                    },
                    complete: function () {
                        $.unblockUI();
                    }

                });

Как вы можете видеть, прежде чем он переходит на сервер, я пишу строку на консоль. Когда я открываю окно консоли, данные, показанные в формате json, как ожидалось, но на сервере строка усекается, как показано на следующем рисунке; Изображение 174551Изображение 174551 Однако данные orignal json в окне консоли показаны ниже (как отключено). Я также использовал jsonformatter для форматирования данных как json и корректного формирования данных;

{ "ActivityInformation" : { "Attributes" : [ { "AttributeId" : "18",
            "AttributeMappingId" : "17",
            "AttributeName" : "Number of Helpers",
            "AttributeValues" : [ { "Value" : "" } ]
          },
          { "AttributeId" : "19",
            "AttributeMappingId" : "12",
            "AttributeName" : "Thickness",
            "AttributeValues" : [ { "Value" : "" } ]
          },
          { "AttributeId" : "14",
            "AttributeMappingId" : "16",
            "AttributeName" : "Width of Trench",
            "AttributeValues" : [ { "Value" : "" } ]
          },
          { "AttributeId" : "8",
            "AttributeMappingId" : "13",
            "AttributeName" : "Extra No",
            "AttributeValues" : [ {  } ]
          },
          { "AttributeId" : "10",
            "AttributeMappingId" : "15",
            "AttributeName" : "Dozer PL.Num",
            "AttributeValues" : [  ]
          },
          { "AttributeId" : "7",
            "AttributeMappingId" : "14",
            "AttributeName" : "Shovel Plate No (Company)",
            "AttributeValues" : [ { "Value" : "51741" } ]
          }
        ],
      "Id" : "25",
      "Name" : "Formation Preperation",
      "Tools" : [ { "ToolGroupName" : "Grader  -  MG 118 - 2003 - CAT 14H",
            "Tools" : [ { "ToolAttributes" : [ { "AttributeId" : "19",
                        "AttributeMappingId" : "21",
                        "AttributeName" : "Thickness",
                        "AttributeValues" : [ { "Value" : "" } ]
                      },
                      { "AttributeId" : "17",
                        "AttributeMappingId" : "22",
                        "AttributeName" : "Number of Masons",
                        "AttributeValues" : [ { "Value" : "" } ]
                      },
                      { "AttributeId" : "7",
                        "AttributeMappingId" : "23",
                        "AttributeName" : "Shovel Plate No (Company)",
                        "AttributeValues" : [ { "Value" : "51741" } ]
                      }
                    ] } ]
          },
          { "ToolGroupName" : "Grader  -  MG 119 - 2007 - CAT 14H",
            "Tools" : [ { "ToolAttributes" : [  ] } ]
          },
          { "ToolGroupName" : "Backhoe Loader -  BL 108 - 2007 - CAT 422E",
            "Tools" : [ { "ToolAttributes" : [ { "AttributeId" : "18",
                        "AttributeMappingId" : "19",
                        "AttributeName" : "Number of Helpers",
                        "AttributeValues" : [ { "Value" : "" } ]
                      },
                      { "AttributeId" : "13",
                        "AttributeMappingId" : "20",
                        "AttributeName" : "Width of Work",
                        "AttributeValues" : [ { "Value" : "" } ]
                      }
                    ] } ]
          },
          { "ToolGroupName" : "Backhoe Loader -  BL 109 - 2007 - CAT 422E",
            "Tools" : [ { "ToolAttributes" : [  ] } ]
          },
          { "ToolGroupName" : "Backhoe Loader -  BL 110 - 2007 - CAT 422E",
            "Tools" : [ { "ToolAttributes" : [  ] } ]
          },
          { "ToolGroupName" : "Backhoe Loader -  BL112 - 2006 - CAT0416",
            "Tools" : [ { "ToolAttributes" : [  ] } ]
          }
        ]
    },
  "ActivityListInformation" : { "Id" : "14",
      "Name" : "Road Activities"
    },
  "MilestoneInformation" : { "Id" : "8",
      "Name" : "Milestone 3"
    },
  "PlaceInformation" : { "AreaId" : 4,
      "AreaName" : "Area 1",
      "RoadId" : 6,
      "RoadName" : "108D",
      "ZoneId" : 5,
      "ZoneName" : "Zone 1"
    },
  "ProjectInformation" : { "Id" : "3",
      "Name" : "LEVELLING AND ROADS IN AL BARSHA SOUTH – COMMUNITY 671 & 672"
    },
  "SubActivityInformation" : [ { "Attributes" : [ { "AttributeId" : "12",
              "AttributeMappingId" : "6",
              "AttributeName" : "End Chainage",
              "AttributeValues" : [ { "Value" : "" } ]
            },
            { "AttributeId" : "18",
              "AttributeMappingId" : "7",
              "AttributeName" : "Number of Helpers",
              "AttributeValues" : [ { "Value" : "" } ]
            }
          ],
        "Id" : "1",
        "Name" : "Test Sub Activity",
        "Tools" : [ { "ToolGroupName" : "Grader  -  MG 118 - 2003 - CAT 14H",
              "Tools" : [ { "ToolAttributes" : [ { "AttributeId" : "19",
                          "AttributeMappingId" : "21",
                          "AttributeName" : "Thickness",
                          "AttributeValues" : [ { "Value" : "" } ]
                        },
                        { "AttributeId" : "17",
                          "AttributeMappingId" : "22",
                          "AttributeName" : "Number of Masons",
                          "AttributeValues" : [ { "Value" : "" } ]
                        },
                        { "AttributeId" : "7",
                          "AttributeMappingId" : "23",
                          "AttributeName" : "Shovel Plate No (Company)",
                          "AttributeValues" : [ { "Value" : "51741" } ]
                        }
                      ] } ]
            },
            { "ToolGroupName" : "Backhoe Loader -  BL 108 - 2007 - CAT 422E",
              "Tools" : [ { "ToolAttributes" : [ { "AttributeId" : "18",
                          "AttributeMappingId" : "19",
                          "AttributeName" : "Number of Helpers",
                          "AttributeValues" : [ { "Value" : "" } ]
                        },
                        { "AttributeId" : "13",
                          "AttributeMappingId" : "20",
                          "AttributeName" : "Width of Work",
                          "AttributeValues" : [ { "Value" : "" } ]
                        }
                      ] } ]
            }
          ]
      },
      { "Attributes" : [  ],
        "Id" : "2",
        "Name" : "sdfdsfsdfsdf",
        "Tools" : [ { "ToolGroupName" : "Backhoe Loader -  BL 108 - 2007 - CAT 422E",
              "Tools" : [ { "ToolAttributes" : [ { "AttributeId" : "18",
                          "AttributeMappingId" : "19",
                          "AttributeName" : "Number of Helpers",
                          "AttributeValues" : [ { "Value" : "" } ]
                        },
                        { "AttributeId" : "13",
                          "AttributeMappingId" : "20",
                          "AttributeName" : "Width of Work",
                          "AttributeValues" : [ { "Value" : "" } ]
                        }
                      ] } ]
            },
            { "ToolGroupName" : "Backhoe Loader -  BL 109 - 2007 - CAT 422E",
              "Tools" : [ { "ToolAttributes" : [  ] } ]
            }
          ]
      }
    ]
}
Теги:
asp.net-mvc
asp.net-mvc-5

1 ответ

1

Просто вычислил это с помощью комментария @Alexei Levenkov. Проблема заключалась в том, что я вручную собирал данные и отправлял данные на сервер с использованием формата строки запроса. Howerver, метод, который я выбираю, - POST. Поэтому я просто подготовлю объект javascript, а затем отправлю его как объект на сервер;

var dto = { "obj": JSON.stringify(transObj), "trackedFromEntityTypeId": trackedFromEntityTypeId, "trackedFromEntityType": trackedFromEntityType };
 $.ajax({
                        url: "/home/activity",
                        dataType: 'html',
                        data: dto,
                        type: 'POST',
                        success: function (data) {
                            var jsonResult = JSON.parse(data);
                            if (jsonResult.status) {
                                bootbox.alert(jsonResult.message, function () {
                                    window.location.href = "/";
                                });
                            } else {
                                displayError('Something bad happend. ' + data.message);
                            }
                        },
                        error: function (error) {
                            displayError('Something bad happend. ' + error.statusText);
                        },
                        complete: function () {
                            $.unblockUI();
                        }

                    });

Ещё вопросы

Сообщество Overcoder
Наверх
Меню