0
안녕하세요. JSON 및 WCF 서비스에서 새로 생겼습니다. JSON을 사용하여 wcf 서비스를 호출하려고하는데 내 매개 변수는 데이터 계약 클래스 중 하나입니다.JSON이 WCF 서비스를 사용하여 null 값을 반환합니다.
내 데이터 계약 클래스는 다음과 같습니다. 여기
namespace Employee.Services.DataContracts
{
using System;
using System.Runtime.Serialization;
[DataContract]
public class ReqDataContract
{
[DataMember]
public long Type { get; set; }
[DataMember]
public string ID { get; set; }
[DataMember]
public DateTime? FDate { get; set; }
[DataMember]
public long? UserID { get; set; }
}
}
여기
public void SaveRequ(ReqDataContract request)
{
var req=request;
}
이 인터페이스의 구현을
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.Wrapped, ResponseFormat = WebMessageFormat.Json)]
[return: MessageParameter(Name = "ReqData")]
void SaveRequ(ReqDataContract request);
의 .js 파일입니다 myWCF 서비스 기능입니다 (AJAX 호출)
var selection = "{ \"Type\": 55,\"ID\":'[email protected]' ,\"FDate\":" + null + " ,\"UserID\": 'ASDAS'}";
searchData = searchData + (searchData != '' ? "," : "") + selection;
if (searchData != null) {
searchData = "[" + searchData + "]";
}
var searchJSON = jQuery.toJSON(eval("(" + searchData + ")"));
var strJSON = searchJSON.toString();
params = '{\"request\":' + strJSON + '}';
$.ajax({
async: false, //To perform synchronize operation to get status
type: "POST",
url: servicePath + "SaveRequ",
dataType: "json",
contentType: "application/json; charset=utf-8",
data: params,
processData: true,
success: function (data) {
// alert(data.ReqData);
},
error: function (xhr, result, id) { alert(xhr.responseText); }
});
모든 것이 잘 작동하지만 문제 나는 내가 요청 값에 값 null이 될 것입니다 .... 내가 뭔가를 놓치고 ?? 이걸 도와주세요.
개체를 Json 형식으로 서버에 전달하려면 http://stackoverflow.com/questions/10110805/jquery-post-json-object-to-a-server를 확인하십시오. – Mohan