В моем файле просмотра я выполняю вызов ajax следующим образом:
$.ajax(
{
url: '@Url.Action("LMTDetailDashboardList", "DetailUsage")',
dataType: "json",
data:
{
ServerID: ServerID,
LicenseId: LicenseId,
company: company,
fromDate: fromDate,
toDate: toDate,
fromhour: fromHour,
toHour: toHour
},
type: "GET",
error: function (xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
toastr.error(err.message);
},
beforeSend: function () {
$("#divLoading").show();
},
success: function (data) {
LMTDetailDashboardChart(data, Zaxis);
return false;
},
@*error: function (xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
toastr.error(err.message);
},*@
//error: function (jqxhr, status, exception) {
// alert('Exception:', exception);
//},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert("error");
console.log('Could not get posts, server response: ' + textStatus + ': ' + errorThrown);
},
complete: function () {
$("#divLoading").hide();
$("#exportuserlist").show();
}
});
return false;
Код контроллера выглядит следующим образом:
public JsonResult LMTDetailDashboardList(String ServerID, String LicenseId, String Company, String FromDate, String ToDate, String FromHour, String ToHour)
{
int nameLength = Company.Length;
int nameLength2 = ServerID.Length;
int nameLength3 = LicenseId.Length;
System.Text.ASCIIEncoding.ASCII.GetByteCount(Company);
LMTUsage objLMT = new LMTUsage();
LMTDAL objLMTDAL = new LMTDAL();
TempData["Company"] = Company;
TempData["ServerID"] = ServerID;
TempData["LicenseId"] = LicenseId;
TempData["FromDate"] = FromDate;
TempData["ToDate"] = ToDate;
TempData["FromHour"] = FromHour;
TempData["ToHour"] = ToHour;
if (object.Equals(ServerID, null))
{
ServerID = "All";
}
try
{
var response = objLMTDAL.GetLMTDetailUsage(ServerID, LicenseId, Company, FromDate, ToDate, FromHour, ToHour);
if (!object.Equals(response, null))
{
objLMT.LMTDetailUsageList = response.ToList();
}
}
catch (Exception ex)
{
throw;
}
return Json(objLMT.LMTDetailUsageList, JsonRequestBehavior.AllowGet);
}
Когда значение "company" меньше по длине / размеру, ajax-вызов выполняет действие контроллера, но когда он больше, он выдает ошибку и не выполняет метод контроллера.
Я пытался исправить ошибки разными способами, но не смог их исправить. С отладчиком браузера, я получаю следующую ошибку. Экран ошибки
Примечание. Переменная «company» содержит значения, разделенные запятыми, из раскрывающегося списка множественного выбора.
Будь добр, освети его.