微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

不能同时创建教程和上传文件 “错误:错误请求”在我的 TutorialDTO.cs 中有在我的 TutorialController.cs 中

如何解决不能同时创建教程和上传文件 “错误:错误请求”在我的 TutorialDTO.cs 中有在我的 TutorialController.cs 中

我在创建教程和同时上传文件时遇到问题。 每次我尝试时,邮递员都会告诉我:

错误错误请求”

{
  "type": "https://tools.ietf.org/html/rfc7231#section-6.5.1","title": "One or more validation errors occurred.","status": 400,"traceId": "|6030eedc-42a22f9f9c01d926.","errors": {
    "$.file": [
      "The JSON value Could not be converted to Microsoft.AspNetCore.Http.IFormFile. Path: $.file | LineNumber: 0 | BytePositionInLine: 141."
    ]
  }
}

我不知道如何解决这个问题...

在我的 TutorialDTO.cs 中有


public class TutorialDTO
    {
        public string Title { get; set; }
        public string PathToMdFile { get; set; }
        public string Description { get; set; }
        public string VideoLink { get; set; }
        public IList<CommentDTO> Comments { get; set; }
        public IFormFile file { get; set; }
    }

在我的 TutorialController.cs 中


[HttpPost] 
        [disableRequestSizeLimit]
        public async Task<Tutorial> PostTutorial(TutorialDTO tutorial)
        {

            if (tutorial.file != null)
            {
                try
                {
                    //var file = Convert.ToBase64String(Encoding.Unicode.GetBytes(tutorial.file));
                    string path_to_Files = Configuration.GetConnectionString("PathToFiles") + tutorial.file.FileName;

                    using (var stream = new FileStream(path_to_Files,FileMode.Create))
                    {

                        //file = new IFormFile("") { };
                        await tutorial.file.copyToAsync(stream);
                    }

                    Tutorial tutorialToCreate = new Tutorial() { Title = tutorial.Title,Description = tutorial.Description,VideoLink = tutorial.VideoLink,PathToMdFile = path_to_Files };
                    _dbContext.Tutorials.Add(tutorialToCreate);
                    _dbContext.SaveChanges();

                    return tutorialToCreate;
                }
                catch (Exception e)
                {
                    Console.WriteLine(e.Message);
                }
                return null;

            }
            else
            {
                Tutorial tutorialToCreate = new Tutorial() { Title = tutorial.Title,PathToMdFile = tutorial.PathToMdFile };
                _dbContext.Tutorials.Add(tutorialToCreate);
                _dbContext.SaveChanges();

                return tutorialToCreate;
            }

        }

有人可以帮助我吗?我已经为这个问题苦苦挣扎了好几天。我开始厌倦了...

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。