c# - Linux 上的 ASP.NET Core
问题描述
我在 Linux 上遇到了 ASP.NET Core 的问题。我有 VPS 服务器,在此我有我的应用程序,这在本地很好。问题在于文件上传。我不知道为什么我有 异常
我的代码适用于本地主机和本地目录。
public static async Task<List<FileDetail>> UploadFileAsync(this IHostingEnvironment _host,
ApplicationDbContext _context,
int Id,
IFormFileCollection files)
{
for(int i=0; i<files.Count; i++)
{
var file = files[i];
if(file != null && file.Length > 0)
{
try
{
FileDetail fileDetail = new FileDetail()
{
Id = Guid.NewGuid(),
FileName = Path.GetFileName(file.FileName),
Extension = Path.GetExtension(file.FileName).ToLower(),
TicketId = Id,
};
var uploads = Path.Combine(_host.WebRootPath, "Uploads");
const string back = "/";
const string slash = @"\";
var filePath = Path.Combine(uploads, fileDetail.Id + fileDetail.Extension);
filePath = filePath.Replace(slash,back);
fileStream = new FileStream(filePath, FileMode.Create); //there is a problem
await file.CopyToAsync(fileStream);
fileDetails.Add(fileDetail);
_context.FileDetail.Add(fileDetail);
}
catch (IOException)
{
throw;
}
finally
{
fileStream.Close(); //this is my 48 line.
}
}
}
return fileDetails;
}
我认为这是文件夹权限的问题,但我没有 Linux 和 nginx 服务的经验。有人可以帮助我,解决这个问题吗?
解决方案
推荐阅读
- c# - 使用 C# windows 应用程序表单创建 DSN
- android - Android 应用程序的 Firebase 推送通知有效,但 Amazon SNS 移动推送通知不起作用?MismatchSenderId 错误
- regex - 在 bash 脚本正则表达式中转义 "
- python - Python smtplib 向收件箱电子邮件发送回复
- nestjs - 在nestjs下生成一个进程似乎不起作用
- python - 为什么熊猫过滤在进行 Groupby 时对 CategoricalDtype 不起作用?
- lua - 你被踢出经验 nil Roblox
- django - Django 属性错误:“NoneType”对象没有属性“计数”
- linux - 将 .conf 文件重定向到其他文件
- java - Lucene RAMDirectory 已弃用-无论如何如何保留仅目录 RAM?