内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

如何在C#項目中利用HttpClient實現(xiàn)一個文件上傳功能-創(chuàng)新互聯(lián)

這期內(nèi)容當中小編將會給大家?guī)碛嘘P如何在C# 項目中利用HttpClient實現(xiàn)一個文件上傳功能,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

目前累計服務客戶成百上千家,積累了豐富的產(chǎn)品開發(fā)及服務經(jīng)驗。以網(wǎng)站設計水平和技術實力,樹立企業(yè)形象,為客戶提供網(wǎng)站建設、網(wǎng)站制作、網(wǎng)站策劃、網(wǎng)頁設計、網(wǎng)絡營銷、VI設計、網(wǎng)站改版、漏洞修補等服務。成都創(chuàng)新互聯(lián)公司始終以務實、誠信為根本,不斷創(chuàng)新和提高建站品質,通過對領先技術的掌握、對創(chuàng)意設計的研究、對客戶形象的視覺傳遞、對應用系統(tǒng)的結合,為客戶提供更好的一站式互聯(lián)網(wǎng)解決方案,攜手廣大客戶,共同發(fā)展進步。

HttpClientMultipartFormDataContent(傳送門)最低適用于.NET Framework 4.5版本

發(fā)送端代碼

using (HttpClient client = new HttpClient())
{
  var content = new MultipartFormDataContent();
  //添加字符串參數(shù),參數(shù)名為qq
  content.Add(new StringContent("123456"), "qq");

  string path = Path.Combine(System.Environment.CurrentDirectory, "1.png");
  //添加文件參數(shù),參數(shù)名為files,文件名為123.png
  content.Add(new ByteArrayContent(System.IO.File.ReadAllBytes(path)), "file", "123.png");

  var requestUri = "http://192.168.1.108:56852/api/Test/SaveFile";
  var result = client.PostAsync(requestUri, content).Result.Content.ReadAsStringAsync().Result;

  Console.WriteLine(result);
}

接收端代碼

[HttpPost]
public async Task<JsonResult> SaveFile([FromForm]string qq, IFormFile file)
{
  return await Task.Run(() =>
  {
    try
    {
      //保存文件到本地
      var filefullPath = Path.Combine(Directory.GetCurrentDirectory(), file.FileName);
      using (FileStream fs = new FileStream(filefullPath, FileMode.Create))
      {
        file.CopyTo(fs);
        fs.Flush();
      }
    }
    catch (Exception ex)
    {
      return Fail(file.FileName + "---" + ex.Message);
    }
    return Success();
  });
}

注意:如果要通過參數(shù)形式接收數(shù)據(jù),需要確保參數(shù)名稱和上面發(fā)送請求中設置的名稱一致,否則無法自動綁定到參數(shù)中,且需要給參數(shù)加上[FromForm]的標記。

使用model對象接收數(shù)據(jù)

public class SaveFileModel
{
  public string qq { get; set; }
  public IFormFile File { get; set; }
}
public async Task<JsonResult> SaveFile([FromForm]SaveFileModel model)
{
  //......
}

使用HttpContext從請求的Form中獲取數(shù)據(jù)

public async Task<JsonResult> SaveFile()
{
  return await Task.Run(() =>
  {
    var files = HttpContext.Request.Form.Files;
    var qq = HttpContext.Request.Form["qq"];
    //......
  });
}

上述就是小編為大家分享的如何在C# 項目中利用HttpClient實現(xiàn)一個文件上傳功能了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

新聞名稱:如何在C#項目中利用HttpClient實現(xiàn)一個文件上傳功能-創(chuàng)新互聯(lián)
轉載來源:http://www.rwnh.cn/article34/iiepe.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)微信小程序、網(wǎng)站排名網(wǎng)站營銷、移動網(wǎng)站建設、網(wǎng)站改版

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
晋江市| 桃江县| 扎赉特旗| 云安县| 新乡县| 土默特左旗| 通河县| 巩义市| 泰安市| 漳州市| 安龙县| 隆德县| 张家港市| 弋阳县| 梅河口市| 于田县| 临高县| 右玉县| 济宁市| 东兰县| 神池县| 彰化县| 青浦区| 玛纳斯县| 长寿区| 平安县| 诏安县| 邢台县| 彭泽县| 邳州市| 永嘉县| 丹阳市| 惠州市| 吴川市| 井冈山市| 兴城市| 信阳市| 芒康县| 西乌珠穆沁旗| 伊通| 常熟市|