Jquery 如何在MVC Razor中使用request.form获取上传文件的附加值?

Jquery 如何在MVC Razor中使用request.form获取上传文件的附加值?,jquery,asp.net-mvc,asp.net-mvc-4,razor,Jquery,Asp.net Mvc,Asp.net Mvc 4,Razor,如何在MVC Razor中使用request.form获取上传文件的附加值?我无法访问“fileTypeInput”值。请看截图。。。 @LocalizeGlobal(“添加文件…”) @* *@ 私有无效文件上载(课程项) { var x=(System.Web.HttpPostedFileBase)Request.Files[“uploadFile”]; 开关(Request.Form[“fileTypeInput”]) { 案例“上传”: . . . . . . . . . } }

如何在MVC Razor中使用request.form获取上传文件的附加值?我无法访问“fileTypeInput”值。请看截图。。。


@LocalizeGlobal(“添加文件…”)
@* *@
私有无效文件上载(课程项)
{
var x=(System.Web.HttpPostedFileBase)Request.Files[“uploadFile”];
开关(Request.Form[“fileTypeInput”])
{
案例“上传”:
. . . .
. . . . .
}
}

fileTypeInput
将位于
Request.Files
内,而不是
Request.Form
内。你好像把那些钥匙倒过来了:

var x = (System.Web.HttpPostedFileBase)Request.Files["fileTypeInput"];
由于文件输入的名称为
fileTypeInput
,因此您应该使用该键从
Request.Files
集合中检索上载的文件。现在您已经使用了
Request.Files[“uploadFile”]
,但不清楚此
uploadFile
来自何处,也不清楚表单中是否有使用此名称的文件输入

您还可以让控制器操作使用相同名称的参数:

public ActionResult SomeAction(HttpPostedFileBase fileTypeInput)
{
    ...
}
这将避免您需要强制转换,也使您的操作更易于单独进行单元测试

public ActionResult SomeAction(HttpPostedFileBase fileTypeInput)
{
    ...
}