【问题标题】:.Net - Use HttpClient to POST a file?.Net - 使用 HttpClient 发布文件?
【发布时间】:2012-08-19 15:44:29
【问题描述】:

我有一个调试方法,我正在尝试使用它来将多个文件发布到本地端点以模拟一系列上传。

我有以下代码:

var fi = new FIleInfo(....);
var form = new MultipartFormDataContent();
form.Add(new StreamContent(fi.OpenRead()), "file", fi.Name);
client.PostAsync(@"http://localhost:12372/TemplateManagement/Asset/Create", form);

我想发布到具有以下签名的方法(资产来自自定义活页夹,但这并不重要):

public JsonResult Create(HttpPostedFileBase file, DynamicBuilderAsset asset)

帖子正常,但文件参数为空。我在这里错过了什么?

【问题讨论】:

    标签: .net asp.net-mvc httpclient asp.net-web-api


    【解决方案1】:

    尝试引用名称和文件名:

    form.Add(new StreamContent(fi.OpenRead()), "\"file\"", "\"" + fi.Name + "\"");
    

    如果您发送标准密钥也是如此:

    form.Add(new StringContent("some asset data"), "\"asset\"");
    

    【讨论】:

    • 我花了这么长时间才回到它,但是是的,这有效。谢谢达林
    猜你喜欢
    • 1970-01-01
    • 2018-08-10
    • 2013-06-13
    • 1970-01-01
    • 2020-03-17
    • 1970-01-01
    • 1970-01-01
    • 2013-02-17
    • 2018-06-29
    相关资源
    最近更新 更多