2016-08-26 12 views
0

У меня есть виртуальный сервер, где настроен IIS 7.5 для работы с ASP.NET MVC. При развертывании приложения все работает нормально. Только одна вещь не работает, когда я запускаю приложение, возможно, я ошибаюсь, но я думал, что код правильный.MVC5 и IIS 7.5 Конфигурация

<script> 
$(document).ready(function() { 
    $("#Subcode").prop("disabled", true); 
    $("#MasterId").change(function() { 
     if ($("#MasterId").val() != "Select Master Code") { 
      var CountryOptions = {}; 
      CountryOptions.url = "/Audit/FindSubCode"; 
      CountryOptions.type = "POST"; 
      CountryOptions.data = JSON.stringify({ master_id: $("#MasterId").val() }); 
      CountryOptions.datatype = "json"; 
      CountryOptions.contentType = "application/json"; 
      CountryOptions.success = function (SubCodeList) { 
       $("#Subcode").empty(); 
       for (var i = 0; i < SubCodeList.length; i++) { 
        $("#Subcode").append("<option>" + SubCodeList[i] + "</option>"); 
       } 
       $("#Subcode").prop("disabled", false); 
      }; 
      CountryOptions.error = function() { alert("Error in Getting SubCodes!!"); }; 
      $.ajax(CountryOptions); 
     } 
     else { 
      $("#Subcode").empty(); 
      $("#Subcode").prop("disabled", true); 
     } 
    }); 
}); 
</script> 

@Html.DropDownList("MasterId",ViewBag.MasterId as SelectList,"Select Master Code",new { @class = "form-control"}) 
<select id="Subcode"></select> 

И код из контроллера

public JsonResult FindSubCode(int master_id) 
{ 
    List<string> SubCodeList = new List<string>(); 
    switch(master_id) 
    { 
     case 1: 
      SubCodeList.Add("Test"); 
      break; 
     case 2: 
      SubCodeList.Add("Test2"); 
      break; 
    } 
    return Json(SubCodeList); 
} 

Почему я пишу эту проблему в качестве конфигурации IIS, потому что если я бег на месте этого приложения, все работает отлично. Но когда я запускаю на сервере, я получил ошибку из кода «Ошибка при получении подкодов!».

Я пытался отладки и получить следующую ошибку: Error when devug

Любое предложение, как я могу это исправить?

+0

Я не думаю, что это имеет отношение к конфигурации. Проверьте свой URL. '/ Audit/FindSubCode' будет указывать на корень сервера, который может отличаться от того, где подаётся приложение. Старайтесь не жестко кодировать путь, а используйте бритву для генерации пути. т.е. '@ (Url.Action (« FindSubCode »,« Аудит »)' – Nkosi

ответ

0

Я не думаю, что это связано с конфигурацией. Проверьте свой URL.

/Audit/FindSubCode будет указывать на корень сервера, который может отличаться от того, где подаётся приложение.

Попробуйте не указывать путь, а используйте бритвенный engin UrlHelper, чтобы сгенерировать путь.

CountryOptions.url = "@(Url.Action("FindSubCode","Audit")";