2010-09-09 5 views
0

Я сохраняю изображение пользователя в файловой системе домена приложения. и путь хранения в базе данных. Я получаю путь в свой User.PhotoPath. Я хочу показать изображение на странице этого photopath. Как это показать?Как заполнить изображение в asp.net MVC 2

Я использую Asp.net MVC 2 + C#.

ответ

2

Обеспечить PhotoPath как свойство на вашем ViewModel:

public class UserViewModel 
{ 
    //... 
    public string PhotoPath { get; set; } 
} 

Контроллер:

public ActionResult Show(int id) 
{ 
    // load User entity from repository 
    var viewModel = new UserViewModel(); 
    // populate viewModel from User entity 
    return View(viewModel); 
} 

Вид:

<%@ Page Title="" Language="C#" Inherits="System.Web.Mvc.ViewPage<UserViewModel>" %> 

... 
<img src="<%= Model.PhotoPath %>" alt="User Photo" /> 
... 

Вы можете также передать User объект непосредственно к просмотру , но это не рекомендуется делать. Но если вы хотите сделать это так, то вы должны изменить страницу директиву вида по соответствующей:

<%@ Page Title="" Language="C#" Inherits="System.Web.Mvc.ViewPage<User>" %> 
2

Установи пользователь как модель для зрения и использование PhotopPath в качестве источника для элемента изображения.

<img src="<%= model.PhotoPath %>" alt="whatever you want" /> 

В качестве альтернативы вы можете сохранить путь в контроллере в вашем ViewData, если вы хотите использовать другой класс как модель для представления, как это:

Контроллер:

ViewData["PhotoPath"] = yourUser.Photopath; 

Вид:

<img src="<%= ViewData["PhotoPath"].ToString() %>" alt="whatever you want" /> 
Смежные вопросы