将数据添加到远程MySql服务器时发生错误

时间:2019-06-07 17:58:41

标签: mysql entity-framework file-upload .net-core

我正在尝试在远程SQl服务器中上传新帖子,但一切正常,但是当我在上传中选择照片时说“处理您的请求时发生错误”,这在localhost服务器上效果很好,但在远程服务器上效果不佳

公共异步任务NewPost([Bind(“ Id,Title,PhotoUrl,Category,Description,”)]发表)         {

        var files = HttpContext.Request.Form.Files;
        foreach (var Image in files)
        {
            if (Image != null && Image.Length > 0)
            {

                var file = Image;
                var uploads = System.IO.Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/postimages");

                if (file.Length > 0)
                {
                    var fileName = ContentDispositionHeaderValue.Parse
                        (file.ContentDisposition).FileName.Trim('"');

                    System.Console.WriteLine(fileName);
                    using (var fileStream = new FileStream(Path.Combine(uploads, file.FileName), FileMode.Create))
                    {
                        await file.CopyToAsync(fileStream);
                        post.PhotoUrl = file.FileName;
                    }


                }
            }
        }
            post.Author = _user.GetUserName(HttpContext.User);
        _context.Posts.Add(post);
        await _context.SaveChangesAsync();
        return RedirectToAction("Index", "Admin");
    }

它在本地服务器上完美运行,

1 个答案:

答案 0 :(得分:0)

该问题似乎是存储权限问题。它在localhost中可以正常工作,并且仅在服务器中显示错误。此外,在您的评论中,您提到这是在共享主机解决方案中。在Windows的共享托管中,您将必须特别为IIS用户授予特定文件夹的权限。这可以在托管服务提供商的网站上完成(您可能具有并行服务器之类的控制台)。