Мне трудно загрузить изображение и затем отобразить его в моем представлении.Я просмотрел здесь много постов, и по какой-то причине у меня ничего не получалось.
Изображение загружается (в моем случае оно сохраняется в ~/Content/Images
, но не отображается в представлении. Весь проект публикуется в Azure.
Пожалуйста, абстрагируйтесь от таких вещей, как проверка загруженного файлана самом деле картинка или обработка размера картинки.
Моя модель домена:
public class Product
{
...
public string ProductImageUrl { get; set; }
...
}
Контроллер - метод публикации:
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(/*[Bind(Include = "ProductId,ProductName,ProductDescription,ProductPrice, CategoryId, Quantity, picture")]*/ Product product, HttpPostedFileBase picture)
{
if (ModelState.IsValid)
{
db.Products.Add(product);
if (picture != null)
{
var originalFileName = Path.GetFileName(picture.FileName);
string fileId = Guid.NewGuid().ToString().Replace("-", "");
var path = Path.Combine(Server.MapPath("~/Content/Images/"), fileId + ".jpg");
picture.SaveAs(path);
product.ProductImageUrl = path;
product.ProductImageName = fileId;
db.SaveChanges();
}
db.SaveChanges();
return RedirectToAction("Index");
}
return View(product);
}
На мой взгляд:
@foreach (var item in Model)
{
<tr>
<td>
<img src="@item.ProductImageUrl" />
</td>
...