Actionscript 3 asp.net mvc2从flash发布文件和表单值

Actionscript 3 asp.net mvc2从flash发布文件和表单值,actionscript-3,asp.net-mvc-2,Actionscript 3,Asp.net Mvc 2,我们正在尝试从flash应用程序上载文件并将参数提交到ASP.Net MVC2控制器。实际上,这只是创建一个标准的多部分/表单post,其中包含一个文件和post参数 在控制器中: public string Upload(HttpPostedFile file, string someString, int someInt, DateTime someDate) { // some code return "success"; }

我们正在尝试从flash应用程序上载文件并将参数提交到ASP.Net MVC2控制器。实际上,这只是创建一个标准的多部分/表单post,其中包含一个文件和post参数

在控制器中:

public string Upload(HttpPostedFile file, string someString, 
                        int someInt, DateTime someDate)
{
    // some code
   return "success";
}
从flash(flex)下载:


控制器已实例化,但找不到该方法,如果我们只发布文件而不添加其他参数,它工作正常,我们还可以让它与文件和someInt参数一起工作,而不使用其他参数?

为了让其他人也尝试这样做,我们使用以下方法使其工作:

[HttpPost]
public int Index(HttpPostedFileBase file,
    [Bind(Prefix = "someString")] string someString,
    [Bind(Prefix = "someInt")] int someInt,
    [Bind(Prefix = "someDate")]  string someDate)
{
    // stuff here
}

这是可行的,但我不知道为什么,我以为前缀是用来访问集合项目之类的。我猜在发布文件时,关联的表单数据会在集合中传递吗?如果有人知道原因或更好的方法,我很乐意将答案告诉其他人。

我会打赌一些关于安全性的东西,可能会添加
Security.allowdomain(“网站”、“IP”)
[HttpPost]
public int Index(HttpPostedFileBase file,
    [Bind(Prefix = "someString")] string someString,
    [Bind(Prefix = "someInt")] int someInt,
    [Bind(Prefix = "someDate")]  string someDate)
{
    // stuff here
}