C# 张贴图像

C# 张贴图像,c#,asp.net,asp.net-mvc,asp.net-mvc-3,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 3,您好,我正试图发布一个图像,但我肯定错过了什么,因为我得到的只是一个字符串作为回报。以下是我的代码: @using( Html.BeginForm("Create", "ProductManager", FormMethod.Post,new{enctype="multipart/form-data"})){ <input type="file" class="text-box single-line" id="ProductImagePath" name="Pro

您好,我正试图发布一个图像,但我肯定错过了什么,因为我得到的只是一个字符串作为回报。以下是我的代码:

    @using( Html.BeginForm("Create", "ProductManager", FormMethod.Post,new{enctype="multipart/form-data"})){
        <input type="file" class="text-box single-line" id="ProductImagePath" name="ProductAvatar" />           
     }

    [HttpPost]
    public ActionResult Create(  FormCollection collection)
    {
        var imagePosted = collection["ProductAvatar"]; 
    }
@使用(Html.BeginForm(“Create”、“ProductManager”、FormMethod.Post、new{enctype=“multipart/formdata”})){
}
[HttpPost]
公共操作结果创建(FormCollection集合)
{
var imagePosted=collection[“ProductAvatar”];
}

imagePosted仅返回null。我做错了什么?

您是否尝试查看正在向控制器发布的内容?打开开发者工具/FireBug并预览。在Chrome中,您可以看到类似以下内容:

------WebKitFormBoundaryWKyJnLI9EtN9Hqca
Content-Disposition: form-data; name="ProductAvatar"; filename="default.jpg"
Content-Type: image/jpeg
确保文件输入的name参数与HttpPostedFileBase输入参数的名称相同。确保没有其他同名输入

最后,在调试中运行您的项目。在您的操作上设置断点。转到即时窗口。到处闲逛。看看是否

 Request.Files
有什么对你有好处的吗


祝您好运:)

删除此线程,您已经准备好在另一个线程中使用awnser。的可能副本