Как заполнить изображение в asp.net MVC 2 - PullRequest
0 голосов
/ 09 сентября 2010

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

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

Ответы [ 2 ]

2 голосов
/ 09 сентября 2010

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

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

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

Контроллер:

ViewData["PhotoPath"] = yourUser.Photopath;

Вид:

<img src="<%= ViewData["PhotoPath"].ToString() %>" alt="whatever you want" />
2 голосов
/ 09 сентября 2010

Предоставьте PhotoPath как свойство для вашей модели представления:

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>" %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...