尝试配置演示Web API时遇到POST请求问题。使用textarea允许用户从Excel复制/粘贴parms列表,EF代码抛出一个SQL异常,即字符串或二进制数据将被断言。这只发生了5条记录。但是,如果我使用Fiddler并手动创建JSON,我可以拥有超过300条记录的列表。我能看到的唯一不同的是代码添加的控制字符。下面是我看到的代码生成的错误
{"parmType_ID":"1","appuser_ID":1,"request_NAME":"test-5-from-screen","rawInputParmList":"AB00000003\nAB00000004\nAB00000005\nAB00000006\nAB00000008","saveRequest":true}
如果我只是编辑该请求以删除\ n它可以正常工作
{"parmType_ID":"1","appuser_ID":1,"request_NAME":"test-5-from-fiddler","rawInputParmList":"AE00000003
AE00000004
AE00000005
AE00000006
AE00000008","saveRequest":true}
这是JQuery调用
function addRequest() {
var reportid = $('#selReports').val();
var parmtypeid = $('#selParmTypes').val();
var requestname = $('#txtRequestName').val();
var inputparms = $('#txtInputParms').val();
var dataObject = {
'parmType_ID': parmtypeid,
'appuser_ID': 1,
'request_NAME': requestname,
'rawInputParmList': inputparms,
'saveRequest': true
};
console.log(dataObject);
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: 'api/ReportRequest',
data: JSON.stringify(dataObject),
success: function (msg) {
alert('Success');
},
error: function (err) {
alert('Error');
}
});
在拨打电话之前,我应该对该textarea做些什么吗?