【问题标题】:Adding images to database将图像添加到数据库
【发布时间】:2016-07-09 22:08:18
【问题描述】:

我正在尝试将两个不同的图像添加到数据库中,但它只是添加一个,然后为第二个值添加相同的一个。

这是我将许多照片添加到数据库的控制器

public ActionResult Create([Bind(Include = "id,title,bodyofarticle")] article article )
{
    if (ModelState.IsValid)
    {
         db.articles.Add(article);
         db.SaveChanges();
        foreach (string file in Request.Files)
        {
            HttpPostedFileBase hpf = Request.Files[file] as HttpPostedFileBase;

            string saveFileName = Path.GetFileName(hpf.FileName);
            string location = Path.Combine(Server.MapPath("~/Images/" + hpf.FileName));
            Request.Files[file].SaveAs(location);
            image imag = new image();
            imag.url = Url.Content("~/images/" + saveFileName);
            imag.articleid = article.id;
            db.image.Add(imag);
            article.images.Add(imag);
            db.SaveChanges();

        }
    }   
    return RedirectToAction("Index");
}

这里是风景

@using (Html.BeginForm( "Create", null, FormMethod.Post, new { enctype = "multipart/form-data" }))
{    
  <input type="file" multiple=multiple id="file" name="files" />
}

【问题讨论】:

    标签: c# asp.net-mvc entity-framework


    【解决方案1】:

    Request.Files 返回 HttpFileCollection 类型的对象。https://msdn.microsoft.com/en-us/library/system.web.httpfilecollection(v=vs.110).aspx
    为了获取文件中的特定文件,您可以通过索引 Files[0],Files[1] 或命名 Files[firstName],Files[secondName]
    使用对象的属性 根据您的代码,您只能使用 Files 对象中的一个文件。

    【讨论】:

    • 对不起,先生,但我正在使用字符串文件来获取请求中文件的名称,我尝试使用整数而不是字符串,但这里发生了异常:" WEBSITI.dll 中发生了“System.InvalidCastException”类型的异常,但未在用户代码中处理附加信息:指定的强制转换无效。”我真的很感谢你帮助我并给我一些时间
    • Files[0] 返回 HttpPostedFile 类型对象。从msdn.microsoft.com/en-us/library/…阅读此对象的详细信息
    【解决方案2】:

    public ActionResult Create([Bind(Include = "id,title,bodyofarticle")] 文章文章/, HttpPostedFileBase 文件/) { 如果(模型状态。IsValid) { db.articles.Add(文章); db.SaveChanges(); for (int i = 0; i

                }
    
    
                    db.SaveChanges();
                return RedirectToAction("Index");
            }
    
            return View(article);
        }
    

    //希望其他人得到好处:)

    【讨论】:

      猜你喜欢
      • 2014-01-29
      • 2020-03-25
      • 1970-01-01
      • 2021-02-20
      • 2011-06-03
      • 1970-01-01
      • 2010-10-12
      • 2014-06-03
      • 1970-01-01
      相关资源
      最近更新 更多