gpt4 book ai didi

c# - 从 .net core 2.2 移动到 3.1 后无法上传文件

转载 作者:行者123 更新时间:2023-12-04 10:30:32 25 4
gpt4 key购买 nike

我有一个为上传文件而构建的服务。
有 2 个程序集:一个带有 ApiController,另一个带有逻辑。

Controller :

public async Task<UploadFileResponse> UploadFromUrl([Required] string url, [FromQuery] string policy = null)
{
return await _fileStorageService.UploadFromUrlAsync(url, policy);
}

和业务:
public abstract class BaseFileStorageService<TOptions> : IFileStorageService
{
...
public async Task<UploadFileResponse> UploadFromUrlAsync(string url, string policyName = null, CancellationToken cancellationToken = default) {
var fileName = Path.GetFileName(uri.LocalPath);

... //http request for the file

var fileDataStream = await downloadResponse.Content.ReadAsStreamAsync();
if (contentLength == null)
throw new Exception("File upload error");

var formFile = new FormFile(fileDataStream, 0, contentLength.Value, null, fileName)
{
Headers = new HeaderDictionary(),
ContentType = contentType
};
}
}

我添加了以下软件包:

Microsoft.AspNetCore.Http v.2.2.2

Microsoft.AspNetCore.Http.Features 2.2.0(我试过 3.1.2 但行为是一样的)

这两个项目都是使用 .net core 3.1 构建的。当前安装的版本是 3.1.102。

A 可以与 Controller 上的调试器中断,但是当我试图进入业务逻辑时,我收到以下消息:
System.TypeLoadException: 'Could not load type 'Microsoft.AspNetCore.Http.Internal.FormFile' from assembly 'Microsoft.AspNetCore.Http, Version=3.1.2.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'.'

我花了一天的时间来解决这个问题。并且不知道如何使它工作。

可能是什么原因,我该如何解决?

最佳答案

关于c# - 从 .net core 2.2 移动到 3.1 后无法上传文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60445639/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com