Asp.net mvc 4 MVC将页面作为文件返回

Asp.net mvc 4 MVC将页面作为文件返回,asp.net-mvc-4,postback,Asp.net Mvc 4,Postback,我有一个mvc4项目,我得到了一个奇怪的结果。每当我使用表单并启动回发时,如果条目正确,它就会将我重定向到成功页面,这很好。但是,当我的输入无效并且必须返回到同一页面以显示错误消息时,它会显示为可下载文件。谁能告诉我发生了什么事 <HttpPost()> Public Function Collection(oColInfo As CollectionInfoVM) As ActionResult If ModelState.IsValid Then

我有一个mvc4项目,我得到了一个奇怪的结果。每当我使用表单并启动回发时,如果条目正确,它就会将我重定向到成功页面,这很好。但是,当我的输入无效并且必须返回到同一页面以显示错误消息时,它会显示为可下载文件。谁能告诉我发生了什么事

    <HttpPost()>
    Public Function Collection(oColInfo As CollectionInfoVM) As ActionResult
        If ModelState.IsValid Then
            oColInfo.CollectionDate = DateTime.Now
            m_oAppBase.Collection.AddGroupCollection(oColInfo)
            Return View("_Success")
        Else
            ViewData.Add("PaymentTypes", PaymentType.Dictionary.ToSelectList(oColInfo.PaymentType))
            ViewData.Add("PaidBy", PaidBy.Dictionary.ToSelectList(oColInfo.PaidBy.ToString()))

            Return View(oColInfo)
        End If
    End Function
为什么我的默认返回类型是JSON

ActionResult也包括JsonResult。因此,当您使用ActionResult并从ajax发布数据时,默认情况下会返回Json

但是当我的输入无效时,它必须返回到同一页

要在客户端验证表单,您必须在脚本中使用valid方法。它在客户端验证表单,并且不会发布到您的操作

JqueryCode:

if ($('form').valid()) {
            $.ajax({});
                });

好的,环顾四周,我发现页面上有一个部分视图,它的属性返回JSON,当我提交按钮时,这个get也启动并返回到浏览器。我删除了HttpPost属性,并将其修复。叹气

听起来mime类型可能配置错误
if ($('form').valid()) {
            $.ajax({});
                });