PDA

View Full Version : مشکل نمایش عکس در mvc



ERIKA
جمعه 04 آذر 1390, 14:04 عصر
من یک تیکه کدی دارم به این شکل که عکس را ذخیره میکند



[HttpPost]
public ActionResult Create(News news)
{
if (ModelState.IsValid)
{
try
{
if (Request.Files.Count > 0)
{
HttpPostedFileBase file = Request.Files[0];
if (file.ContentLength > 0 && file.ContentType.ToUpper().Contains("JPEG"))
{
string fileName = Path.Combine(Server.MapPath("~/Uploads"), Path.GetFileName(file.FileName));
file.SaveAs(fileName);
news.PicNews= fileName;
}
}

}
catch
{
throw;
}

news.DateInsert = DateTime.Now;
db.News.Add(news);
db.SaveChanges();



این هم قسمت view



<div class="editor-label">
@Html.LabelFor(model => model.PicNews)
</div>
<div class="editor-field">
<input type="file" name="ImageUpload1" />
</div>


برای نمایش هم به این صورت عمل میکنم



<img width="280px" height="100px" alt="@T.Title" src='../../Uploads/'+"@T.PicNews" />
<img src="@T.PicNews" alt="" />

<img src= "@Url.Content(T.PicNews)" alt="" />



توی دیتا بیس هم تی فیلد picnewsبه این صورت هست

K:\SiteNews444\SiteNews\SiteNews\Uploads\Penguins. jpg

مشکل چی هست که عکس را نمایش نمیدهد

asif1358
جمعه 04 آذر 1390, 22:30 عصر
سلام
اولین مشکلی اینه که نام و مسیر فایل نباید به این صورت در دیتا بیس ذخیره بشه.
نمی دانم؛ شاید بهتر باشه فقط نام عکس را در دیتا بیس ذخیره کنید؛ چیزی مشابه این:


string fileName = file.FileName;
fileName = fileName.Substring(fileName.LastIndexOf("\\") + 1);
file.SaveAs(Server.MapPath("~/Uploads/" + fileName));

موقع نمایش هم میتونید مشابه ذیل عمل کنید:گیج::


<img src="@Url.Content('~/Uplaoads/ + @T.PicNews ')" alt=""/>