안녕하세요. 여기에 .net 웹 서비스에 여러 개의 배열을 게시하는 데 어려움을 겪고 있습니다. 여기에 내 웹 서비스의 서명이 있습니다.자바 스크립트를 사용하여 .net webservice에 여러 배열을 게시하는 중
<WebMethod()> _
Public Function Lib_Processor(ByVal w_vendor As String(), _
ByVal w_invoice As String(), _
ByVal w_invdate As String(), _
ByVal w_amount As Decimal(), _
ByVal w_account As String(), _
ByVal w_fund As String(), _
ByVal w_org As String(), _
ByVal w_prog As String(), _
ByVal w_adrsstyp As String(), _
ByVal w_adrss_seq As String(), _
ByVal w_Row As String(), _
ByVal w_bank As String(), _
ByVal w_user As String(), _
ByVal w_addl_info As String()) As List(Of GetErrors)
나는 테이블을 반복 한 후 제대로 서비스에 보낼 수있는 개체를 만들 수 json.stringfy 사용하여 개체에 모든 값을 얻고있다.
이와같이.
var invoice = JSON.stringify({ w_invoice:w_invoice });
var vendor = JSON.stringify({ w_vendor: w_vendor });
var invdate = JSON.stringify({ w_invdate:w_invdate });
var amount = JSON.stringify({ w_amount:w_amount });
var fund = JSON.stringify({ w_fund:w_fund });
var org = JSON.stringify({ w_org:w_org });
var prog = JSON.stringify({ w_prog: w_prog });
var account = JSON.stringify({ w_account: w_account });
var adrsstyp = JSON.stringify({ w_adrsstyp:w_adrsstyp });
var adrss_seq = JSON.stringify({ w_adrss_seq:w_adrss_seq });
var Row = JSON.stringify({ w_Row:w_Row });
var bank = JSON.stringify({ w_bank:w_bank });
var user = JSON.stringify({ w_user:w_user });
var addl_info = JSON.stringify({ w_addl_info: w_addl_info });
는 내가 배열에 보내 내 서비스에 전화 makea.
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
data: '{w_vendor:"' + w_vendor + '",w_invoice:"' + w_invoice + '",w_invdate:"'+w_invdate + "}",
//data: "{"+vendor, invoice, invdate, amount,account,fund,org,prog,adrsstyp,adrss_seq,Row,bank,user,addl_info +"}",
// "{"+ vendor+invoice+invdate+amount+account+fund+org+prog+adrsstyp+adrss_seq+Row+bank+user+addl_info+"}"
url: "ServiceApUtils.asmx/Lib_Processor",
dataType: "json",
success: respond,
error: function (e) { $('.result').html("An Error Occured"); }
});
그러나이 메신저는 단순히 한 서비스에 많은 JSON 개체를 보내려고하기 때문에 비참하게 난 이유를 이해할 수 실패합니다. 내가 어떻게 고칠 수 있니? 난 그냥
var thisInvoice = {INVOICE:INVOICE}
기본적으로
var dto = { 'INVOICE': INVOICE };
var PnJ = JSON.stringify(dto);
처럼 하나의 객체 일을 시도했지만이 작동하지 않습니다. 내 서비스로 보내려면이 개체를 어떻게 적절하게 조정할 수 있습니까? 도움을 주시면 대단히 감사하겠습니다.
마지막 예제가 "작동하지 않는 이유"를 설명해주십시오. –
json 문자열을 json 문자열 안에 정확히 두는 이유는 무엇입니까? 왜 단지 하나의 json 문자열을 가지고 있지 않은가? 이 구조는 의미가 없습니다. 이것은'w_vendor' 주위에 큰 따옴표가 없기 때문에 자체적으로 # 1 잘못된 json 인'{w_vendor : "{\"w_vendor \ ": \"somevalue \ "}"}'입니다. # 2는 당신이 원하는 것 같지 않은 중첩 json 문자열입니다. –
내 오류를 지적 해 주셔서 감사합니다. 당신은 해결책을 제안 할 수 있습니까? 나는 json 문자열을 제대로 작성하지 않고 있지만 예제가 먼 길을 간다는 것을 이해합니다. – Miguel