【问题标题】:AspnetCore.Mvc Upload file error, the var caminho always null even with IFormfile validAspnetCore.Mvc 上传文件错误,即使 IFormfile 有效,var caminho 始终为空
【发布时间】:2019-07-24 22:44:05
【问题描述】:

我尝试上传图片,但 var root 始终为空...

NullReferenceException:对象引用未设置为对象的实例。

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> Create([Bind("Vinhoid,Nome,Ano,Teoralcool,Produtorid,Tipoid,Regiaoid,Datacriacao,Localimagem,Garrafid,Descricao,Preco,Stock")] VinhoDistribuicao vinhoDistribuicao, IFormFile Localimagem)
{
    if (HttpContext.Session.GetString("TipoUtilizador") == "Garrafeira")




    {
        if (ModelState.IsValid)
        {
           if (_context.Vinho.Any(x => x.Ano == vinhoDistribuicao.Ano && x.Nome == vinhoDistribuicao.Nome && x.Tipoid == vinhoDistribuicao.Tipoid) == false)

           {

                var caminho = Path.Combine(he.WebRootPath + "/ImageFiles",
                    Path.GetFileName(Localimagem.FileName));

                FileStream fileStream = new FileStream(caminho, FileMode.Create);
                Localimagem.CopyTo(fileStream);
                fileStream.Close();

HTML

@model Lab4_Vinhos6.Models.VinhoDistribuicao

<div class="form-group">
    <label asp-for="Localimagem" class="control-label"></label>
    <input asp-for="Localimagem" type="file" accept=".png, .jpg" class="form-control" value="" />

    <span asp-validation-for="Localimagem" class="text-danger"></span>
</div>

NullReferenceException:对象引用未设置为对象的实例。

var caminho = Path.Combine(he.WebRootPath + "/ImageFiles",

【问题讨论】:

    标签: c# asp.net-core-mvc


    【解决方案1】:

    确保您在 wwwroot 中有 ImageFiles 文件夹。然后尝试使用下面的代码

    var caminho = Path.Combine(he.WebRootPath, "ImageFiles",Path.GetFileName(Localimagem.FileName));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-27
      • 1970-01-01
      • 1970-01-01
      • 2020-01-20
      • 1970-01-01
      • 1970-01-01
      • 2013-07-16
      • 2013-02-03
      相关资源
      最近更新 更多