在azure中将大字符串发布到mvc4控制器失败

时间:2013-10-17 09:31:17

标签: jquery asp.net-mvc asp.net-mvc-4 azure azure-web-roles

我遇到了mvc4控制器的问题(仅限于生产天蓝色网络角色)

我有一个关于7mb的大型svg图像,我试图将其发送回服务器。我已经尝试了两种方法,没有任何运气做一个完整的表格帖子与svg文件的价值和ajax帖子。两次控制器参数始终为空。

我认为它是因为我想要发送的字符串的大小很大。使用ajax方法的代码示例。

        $(".export").on("click", function () {
        var chart = $("#barchart").data("kendoChart");
        var svgString = chart.svg();
        var exportFormat = $(this).data("format");
        if(svgString!=""&&exportFormat!=""){
            $.ajax({
                type: "POST",
                url: "../SendMyFile",
                data: JSON.stringify(escape(svgString) + "&" + exportFormat),
                contentType: 'application/json',
                dataType: 'json',

我需要进行配置设置还是更改代码? 我还对web.config进行了修改

<system.web.extensions>
<scripting>
  <webServices>
    <jsonSerialization maxJsonLength="50000000">
    </jsonSerialization>
  </webServices>
</scripting>

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:1)

除了更改jsonSerialization元素外,您还必须调整httpRuntime,更准确地调整maxRequestLength属性。默认值为4MB。虽然您可能已经为本地IIS更改了此项,但在Azure中,除非在web.config中明确覆盖,否则您将具有默认值。