ฉันมีปัญหาในการโพสต์ข้อมูลจากโพสต์ jquery ajax ไปยังวิธี asp.net web api คุณสมบัติวันที่จะแสดงในเว็บคอนโซลที่ล้อมรอบด้วยเครื่องหมายคำพูดคู่สองตัว จากนั้นให้รีเซ็ตและคุณสมบัติบูลีนจะถูกตั้งค่าเป็นโมฆะ
จาวาสคริปต์:
self.startTime = ko.observable(startTime);
self.startTimeDate = ko.computed({
read: function() {
return moment(self.startTime()).format("MM-DD-YYYY HH:MM:ss");
},
write: function(value){
self.startTime(moment(value).format("MM-DD-YYYY HH:MM:ss"));
}
});
self.endTime = ko.observable(endTime);
self.endTimeDate = ko.computed({
read: function () {
return moment(self.endTime()).format("MM-DD-YYYY HH:MM:ss");
},
write: function (value) {
self.endTime(moment(value).format("MM-DD-YYYY HH:MM:ss"));
}
});
self.includeDeviceAddedToInventory = ko.observable(true);
var model = {
auditLogType: ko.toJSON(self.auditLogType),
id: ko.toJSON(self.auditLogId),
entriesPerPage: ko.toJSON(self.entriesPerPage),
pageNumber: ko.toJSON(self.pageNumber),
startTime: ko.toJSON(self.startTimeDate),
endTime: ko.toJSON(self.endTimeDate),
includeDeviceAddedToInventory: ko.toJSON(self.includeDeviceAddedToInventory)
...
$.post("api/AuditLog", { filterInfo: model })
คอนโซลจาวาสคริปต์แสดงวัตถุเป็น:
รายการPerPage: "0", pageNumber: "0", endTime: ""10-01-2014 06:10:00"", startTime: ""10-01-2014 06:10:00"", includeDeviceAddedToInventory: "true "
อย่างไรก็ตาม .net debugger จะแสดงอ็อบเจ็กต์เป็น: entryPerPage: 0, pageNumber: 0, endTime: {1/1/0001 12:00:00 AM}, startTime: {1/1/0001 12:00:00 AM}, โมฆะ
เอเอสพี.เน็ต
public class PostModel
{
public int EntriesPerPage { get; set; }
public int PageNumber { get; set; }
public DateTime StartTime { get; set; }
public DateTime EndTime { get; set; }
public string IncludeDeviceAddedToInventory { get; set; }
}
public HttpResponseMessage Post(PostModel filterInfo)
{
ฉันพยายามทำให้เป็นอนุกรมด้วยแอตทริบิวต์ newtonsoft web api ซึ่งใช้งานไม่ได้ แม้ว่าไวยากรณ์อาจไม่ถูกต้องก็ตาม ใครช่วยกรุณาโพสต์ตัวอย่างหรือช่วยเหลือได้ไหม
ขอบคุณ