使用textarea输入的EF Web API JSON帖子会导致SQL异常

时间:2014-09-30 00:05:17

标签: jquery json asp.net-web-api

尝试配置演示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做些什么吗?

0 个答案:

没有答案