Я создал приложение MVC 4. Там у меня есть некоторые просмотры. Каждое из этих представлений отображается либо в браузере, либо в виде электронного письма.Доступ к модели страницы через вызов WebService
Являясь основным элементом электронной почты, я добавил ссылку для отображения тела в браузере.
У меня есть вызов веб-службы, который «просматривает» страницу и получает ее источник и применяет ее как HTML в теле письма, а затем я использую System.Net.Mail.
Теперь, в вызове WebService, мне нужно получить доступ к некоторым значениям Модели обслуживаемой страницы. Возможно ли это? Я делаю это совершенно неправильно? Есть ли у вас какие-либо предложения?
Обе страницы и WebService находятся в одном проекте.
Обновление Моя фактическая проблема заключается в том, что делать с изображениями. Я хочу либо внедрить их (для электронной почты), либо предоставить ссылку (для браузера). Так что моя модель имеет изображения в \
list<System.IO.Stream>
мнение оказывает частичное HTML, который выглядит как:
@model MyProject.Models.ImageTag
@if (@Model.ContentType == 2)
{
<img src="cid:@Model.ImageReference"border="0" alt="" />
}
else
{
<img src="http://www.mysite.com/images/@Model.PropertyId/@Model.Photo" border="0" alt="" />
}
Веб-сервис должен «знать» образы для того, чтобы добавить их в LinkedResources :
foreach (MyProject.Models.Images image in Model.Images)
{
LinkedResource lr = new LinkedResource(image.image, "image/jpeg");
lr.ContentId = image.Name;
lr.TransferEncoding = System.Net.Mime.TransferEncoding.Base64;
lrc.Add(lr);
}
Вышеуказанное не будет работать, конечно, поскольку модели нет. Так что это моя проблема.
Model.Images является
List<Img>
где IMG является
public class Img
{
public string Name { get; set; }
public System.IO.Stream image {get;set;}
}
Вы будете использовать значения как часть подготовки сообщения электронной почты или другую цель целиком? –
@PanagiotisKanavos Kallimera ... Я буду использовать значения в своем веб-сервисе. То, что я хочу, - это доступ к списку в модели, содержащей изображения, которые я хочу встроить в электронное письмо, если оно отображается как тело электронной почты. Если это нужно сделать в браузере, я хочу просто добавить ссылки на изображения. –