gpt4 book ai didi

identity - 如何在 identity asp.net core 3 中上传个人资料图片并进行更新

转载 作者:行者123 更新时间:2023-12-05 07:17:32 27 4
gpt4 key购买 nike

我想在identity 用户中上传头像,并在账户管理中更新。如果有任何关于 asp.net core 的好例子的帖子,请给我链接。

最佳答案

我自己用 FileForm 方法完成的。首先,您必须在用户类 (https://learn.microsoft.com/en-us/aspnet/core/security/authentication/add-user-data?view=aspnetcore-3.0&tabs=visual-studio) 中添加字符串属性。

        public string Avatar { get; set; }

然后,按照文档更新管理/索引文件。现在,如何创建文件上传系统?我确实喜欢下面的代码。但如果我需要为安全起见进行更改,请不要忘记提供帮助。

                    if (Input.Avatar != null)
{
string existfile = Path.Combine(hostingEnvironment.WebRootPath, "uploads", user.Avatar);
System.IO.File.Delete(existfile);

}
var uploads = Path.Combine(hostingEnvironment.WebRootPath, "uploads", "avatar");
var filePath = Path.Combine(uploads, fileName);
this.Image.CopyTo(new FileStream(filePath, FileMode.Create));
user.Avatar = fileName; // Set the file name

在 PostAsync 类之后的 GetUniqueFileName 类:

        private string GetUniqueName(string fileName)
{
fileName = Path.GetFileName(fileName);
return Path.GetFileNameWithoutExtension(fileName)
+ "_" + Guid.NewGuid().ToString().Substring(0, 4)
+ Path.GetExtension(fileName);
}

您还必须添加 IWebHostEnvironment 依赖项注入(inject)并使用 multipart/form-data enctype 更新 cshtml 表单。也不要忘记遵循 .net 文档规则。祝你好运!

关于identity - 如何在 identity asp.net core 3 中上传个人资料图片并进行更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58774738/

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