Я пытаюсь отобразить изображение в виде сетки, но не могу этого сделать. Отображается только имя изображения. Пожалуйста, предложите мне решение - PullRequest
0 голосов
/ 22 января 2020
  1. Это мой контроллер

    [HttpPost]
            public ActionResult Create([Bind] Employee emp, HttpPostedFileBase Photo)
            {
                try
                {
                    if (Photo.ContentLength > 0)
                    {
                        string _ImageName = Path.GetFileName(Photo.FileName);
                        string _path = Path.Combine(Server.MapPath("~/Upload/" + _ImageName), _ImageName);
                        Photo.SaveAs(Server.MapPath(_path));
    
                        objemployee.AddEmployee(emp);
                        ViewBag.Message = "Image Uploaded Successfully!!";
                        return View();
                    }
                    else if (ModelState.IsValid)
                    {
                        objemployee.AddEmployee(emp);
                        return RedirectToAction("Index");
                    }
                    return View(emp);
                }
                catch
                {
                    objemployee.AddEmployee(emp);
                    //return Json(new { msg = "1" }, JsonRequestBehavior.AllowGet);
                    return View();
                }
    
            }
    
  2. код для добавления данных

    public void AddEmployee(Employee emp)
            {
                using (SqlConnection con = new SqlConnection(ConnectionString))
                {
                    SqlCommand cmd = new SqlCommand("spaddEmployee", con);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@FirstName", emp.FirstName);
                    cmd.Parameters.AddWithValue("@LastName", emp.LastName);
                    cmd.Parameters.AddWithValue("@Gender", emp.Gender);
                    cmd.Parameters.AddWithValue("@DOB", Convert.ToDateTime(emp.DOB));
                    cmd.Parameters.AddWithValue("@Hobby", emp.Hobby);
                    cmd.Parameters.AddWithValue("@Photo", emp.Photo);
                    cmd.Parameters.AddWithValue("@City", emp.City);
    
                    con.Open();
                    cmd.ExecuteNonQuery();
                    con.Close();
                }
            }
    
  3. мой следующий создание и представление индекса, данные отображаются на странице индекса

    @ Html .LabelFor (model => model.Photo, htmlAttributes: new {@class = "control-label col-md-2"}) @ Html .TextBox ("Photo", "", new {type = "file"}) @ Html .ValidationMessageFor (model => model.Photo, "", new {@class = "text-danger"})

Ответы [ 2 ]

0 голосов
/ 23 января 2020

добавить метод FormMethod.post в представлении создания

0 голосов
/ 22 января 2020

Вы должны хранить в базе данных не только имя изображения, но и путь к нему.

Для получения более подробной информации см. Приведенный ниже URL с примером:

https://www.aspsnippets.com/Articles/Display-Images-inside-WebGrid-in-ASPNet-MVC.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...