1
在AS中:NET/Mono MVC2下面的表單Render a view as a string方法用於創建html電子郵件正文。如何在asp.net中呈現絕對URL mvc 2查看
Partiil視圖Order.ascx包含像
<img width='20%' alt='' src='<%= Url.Action("Logo", "Store")%>' />
電子郵件中的圖像出現不一樣/Store/Logo
因而不顯示圖像的網站地址的圖像。 如何強制圖像鏈接出現絕對地址,如htttp:/Mysite.com/Store/Logo
或添加網站的基地址到HTML電子郵件正文是這個幫助。
使用ASP.NET/Mono MVC2,.NET 3.5,jquery,jquery ui。
控制器的操作方法:
var s = RenderViewToString<OrderConfirm>("~/Views/Checkout/Order.ascx", order);
public class ControllerBase : Controller
{
protected string RenderViewToString<T>(string viewPath, T model)
{
ViewData.Model = model;
using (var writer = new StringWriter())
{
var view = new WebFormView(viewPath);
var vdd = new ViewDataDictionary<T>(model);
var viewCxt = new ViewContext(ControllerContext, view, vdd, new TempDataDictionary(), writer);
viewCxt.View.Render(viewCxt, writer);
return writer.ToString();
}
}
同一視圖也用於網站在瀏覽器中顯示訂單。在這種情況下,絕對地址也是瀏覽器。這個可以嗎 ? – Andrus 2013-03-11 12:43:26
是的,沒關係。沒有問題。 – 2013-03-11 12:44:42
你只是不想對絕對URL進行硬編碼,除此之外使用它們沒有任何問題,所以只要它們生成了,每個鏈接都可以是絕對的。 – 2013-03-11 12:49:25