Как отобразить внешнее изображение в MVC 3 - PullRequest
0 голосов
/ 29 марта 2012

Мой контроллер возвращает строку, которая является URL-адресом изображения внешнего сайта.Как мне отобразить этот URL в представлении.Я ценю вашу помощь.

Ответы [ 3 ]

2 голосов
/ 29 марта 2012

AngryHacker правильно. Я просто расширяю ответ AngryHacker с помощью некоторого примера кода.

Добавьте свойство в вашей ViewModel для URL изображения и верните его при первом вызове get. Тогда используйте это в Представлении. Таким образом вы избегаете ненужного http-запроса к действию снова

public class UserProfileViewModel
{
  public string DisplayName { set;get;}
  public string GravatarURL { set;get;}
}

и в вашем ACtionMethod,

public ActionResult Get(int id)
{
  UserProfileViewModel objVm=new UserProfileViewModel();
  objVM.GravatarURL="http://www.externalsite.com/image/tiyra.jog";
  //Set other properties also.

  return View(objVm);
}

и в представлении, строго типизированном для вашей UserProfileViewModel,

@model UserProfileViewModel
<h2>"@Model.DisplayName </h2>
<img src="@Model.GravatarURL" />
<p>The image is loaded from @Model.GravatarURL</p>
0 голосов
/ 29 марта 2012

Возможно, вам не хватает той части, где вам нужно HTML-кодировать вывод с помощью тега <%:%>, например: 1001 *

<%: Html.Label(ViewData["PicUrl"].ToString()) %>

... или, если это строковое свойствона вашей модели ...

<label><%: Model.PicUrl %></label>
0 голосов
/ 29 марта 2012

Сделайте URL частью вашей модели и просто сделайте ссылку на нее в представлении.

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