매개 변수 사전에는 'System.Web.Mvc'메서드의 nullableable 'System.Int32'매개 변수 'appId'에 대한 null 항목이 들어 있습니다 .ContentResult CheckForInstaller (Int32) ''HLIT_TicketingMVC.Controllers.TicketController '에 있습니다. 선택적 매개 변수는 참조 유형, 널 입력 가능 유형 또는 선택적 매개 변수로 선언되어야합니다. 데이터 객체로 내장되어
function SubmitAjax(url, message, successFunc, errorFunc) {
$.ajax({
type:'POST',
url:url,
data:message,
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success:successFunc,
error:errorFunc
});
};
은 다음과 같습니다라는 메시지가 있음을 확인
var message="{'appId':"+application.val()+"}";
및
var message="{'appId':'"+application.val()+"'}";
:
var message={"appId":application.val()};
나는 또한 jsonified 문자열을 시도 홍보로 끝나고있다. oper int 값을 게시하려고합니다. 디버거 마우스는 가장 최근에 보여 주었다 : 나는 메소드 서명에서 매개 변수를 제거하면 그 안에 중단 점 않으며,
public ContentResult CheckForInstaller(int appId)
, 그래서 그것은 서명 중 하나입니다 : {appId="6"}
이
컨트롤러의 메소드 서명은 어떤 종류의 속성을 필요로하거나 메시지가 제대로 구축되지 않았다고 믿습니다.
contentType: 'application/json; charset=utf-8',
MVC는 int
로 JSON을 구문 분석하지 않을 :
int를 문자열로 변경할 때 어떤 결과가 나옵니까? public ContentResult CheckForInstaller (String appId)? – Pbirkoff
해당 응용 프로그램 개체는 무엇입니까? 예상대로 작동하는지 확신합니까? –
@ çağdaş - 예, 결과에 마우스를 올리면 예상 한 값이 표시됩니다. @ Pbirkoff - 그걸 시도하지는 않았지만 문제를 발견했습니다. 아래의 답변이 받아 들여졌습니다. – Maslow