内射老阿姨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://m.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)站制作
大兴区| 蕉岭县| 黑山县| 田林县| 德保县| 达尔| 乡宁县| 莎车县| 筠连县| 辉县市| 崇义县| 东城区| 镇原县| 微博| 利辛县| 丰城市| 迭部县| 澜沧| 宁安市| 日喀则市| 沂水县| 珲春市| 双柏县| 海南省| 容城县| 修水县| 织金县| 阿城市| 兴安县| 二连浩特市| 乡宁县| 永和县| 天全县| 镇原县| 衢州市| 武城县| 徐水县| 兴安盟| 乌兰浩特市| 灌阳县| 宜章县|