【问题标题】:How to implement dependency injection by asp.net core boilerplate framework in WebApi projectWebApi项目中如何通过asp.net核心样板框架实现依赖注入
【发布时间】:2019-06-01 09:05:09
【问题描述】:

我在 web 应用程序项目中通过 asp.net core 样板框架实现了依赖注入,但是当我想在 asp.net core WebApi 项目中通过这个样板实现依赖注入时,在程序中调用我的 webapimodule .cs,我收到了这个错误:

无法从程序集中加载类型“System.Web.HttpPostedFileBase” 'System.Web,版本=4.0.0.0,文化=中性, PublicKeyToken=b03f5f7f11d50a3a'。

public static void Main(string[] args)
 {
  // this line return error
  AbpBootstrapper.Create<WebApiModule>().Initialize();
  //
  CreateWebHostBuilder(args).Build().Run();
 }

你能给我一些关于如何在WebApi项目中通过asp.net核心样板框架实现依赖注入的示例吗?

【问题讨论】:

    标签: asp.net-core-webapi aspnetboilerplate boilerplate


    【解决方案1】:

    我发现了问题,我的 webApiModule 依赖于 AbpWebApiModule,它在 .NET Core 中不支持

    【讨论】:

      【解决方案2】:

      .net 核心不运行 sys.web 管道。因此,您将无法在 .net 核心中使用该 API。

      您可以使用 IFormFiles 进行文件上传。

      [HttpPost("UploadFiles")]
      public async Task<IActionResult> Post(List<IFormFile> files)
      {
      long size = files.Sum(f => f.Length);
      
      // full path to file in temp location
      var filePath = Path.GetTempFileName();
      
      foreach (var formFile in files)
      {
          if (formFile.Length > 0)
          {
              using (var stream = new FileStream(filePath, FileMode.Create))
              {
                  await formFile.CopyToAsync(stream);
              }
          }
      }
      
      // process uploaded files
      // Don't rely on or trust the FileName property without validation.
      
      return Ok(new { count = files.Count, size, filePath});
      }
      

      详情请参考此链接 -

      https://docs.microsoft.com/en-us/aspnet/core/mvc/models/file-uploads?view=aspnetcore-2.2

      【讨论】:

        【解决方案3】:

        System.Web.HttpPostedFileBase 存在于.NET Full Framework 中(不是.NET CORE)!

        如果您的项目是.NET CORE,请检查您是否有完整的框架包参考。

        【讨论】:

          猜你喜欢
          • 2016-11-08
          • 2018-08-09
          • 2019-11-18
          • 2019-06-07
          • 2018-01-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多