C# 如何动态构建HTML表作为发送电子邮件的模板(ng repeat)
目前,我构建HTML模板,并在向收件人发送“已解析的电子邮件模板”之前用匹配值替换{Title}占位符,但问题是无法在表中动态生成“数据列表”,因此求助于使用angularjs“ng repeat”,但在解析时,它发送angularjs标记,而不是生成HTML表示 我的问题是如何使用ng repeat构建“angularjs”模板,该模板可用于动态发送电子邮件模板,而无需在浏览器中加载页面,因为angularjs页面似乎只有在浏览器中打开时才会被翻译 如何使用ng repeat动态生成HTML标记,使其足以作为电子邮件发送,谢谢C# 如何动态构建HTML表作为发送电子邮件的模板(ng repeat),c#,html,angularjs,string,angularjs-ng-repeat,C#,Html,Angularjs,String,Angularjs Ng Repeat,目前,我构建HTML模板,并在向收件人发送“已解析的电子邮件模板”之前用匹配值替换{Title}占位符,但问题是无法在表中动态生成“数据列表”,因此求助于使用angularjs“ng repeat”,但在解析时,它发送angularjs标记,而不是生成HTML表示 我的问题是如何使用ng repeat构建“angularjs”模板,该模板可用于动态发送电子邮件模板,而无需在浏览器中加载页面,因为angularjs页面似乎只有在浏览器中打开时才会被翻译 如何使用ng repeat动态生成HTML标
{Title}占位符
名字
姓氏
年龄
吉尔
史密斯
50
前夕
杰克逊
94
angularjs无法直接实现,但Angular2+支持它(在服务器上使用nodejs:)
我也有同样的需求,我记得在SeleniumWebDriver中使用服务器上运行的angularjs试图实现您想要的,但我找不到一个完整而简单的解决方案
相反,我复制了ng repeat模板并将其转换为非常简单的asp.net razor模板,然后将json模型作为dynamic ViewModel传递。
我知道它不是angularjs,但它是一个很好的服务器端替代方案,您也标记了c#。
模板示例:
@Model dynamic
<h4>@Model.Title</h4>
<table>
<tr>
<th>Firstname</th>
<th>Lastname</th>
<th>Age</th>
</tr>
@foreach (dynamic x in Model.Students)
{
<tr>
<td>@x.FirstName</td>
<td>@x.LastName</td>
<td>@x.Age</td>
</tr>
}
</table>
@模型动态
@模型名称
名字
姓氏
年龄
@foreach(Model.Students中的动态x)
{
@x、 名字
@x、 姓氏
@x、 年龄
}
您可以使用RazorEngine nuget帮助生成输出:尝试在控制器中创建消息正文,并将其替换为电子邮件的消息部分。