我有一个HTML文件,它将充当我要发送的电子邮件的模板。有html中的字段是可变的。我想知道是否有一个强大的方法来替换HTML文件中的占位符与变量。我知道我可以串起来,替换掉所有这些,但是这并不理想,因为我有很多变数。下面是HTML文件看起来像什么阅读HTML文件并用变量替换
<html>
<head>
<title></title>
</head>
<body>
<div>
Please read the Cruise Control Details Below<br>
<br>
<table width='100%'>
<tr>
<td width='100%' colspan='5'>
<font size='4'><b>Release Details</b></font>
</td>
</tr>
<tr>
<td width='20%'>
<b>RFC Ticket #</b>
</td>
<td>
%release.RFCTicket%
</td>
<td>
</td>
<td>
</td>
<td width='10%'>
</td>
<td width='20%'>
<b>Project/Release Name</b>
</td>
<td width='20%'>
%release.ReleaseName%
</td>
</tr>
<tr>
<td width='20%'>
<b>Release Date</b>
</td>
<td width='20%'>
%release.ReleaseDateString%
</td>
<td>
</td>
<td>
</td>
<td width='10%'>
</td>
<td width='20%'>
<b>Release Time</b>
</td>
<td width='20%'>
%release.ReleaseTimeString%
</td>
</tr>
<tr>
<td width='20%'>
<b>CAB Approval Status</b>
</td>
<td width='20%'>
%release.CABApproval%
</td>
</tr>
<tr>
<td width='100%' colspan='5'>
</td>
</tr>
<tr>
<td width='100%' colspan='5'>
<font size='4'><b>Contact Information:</b></font>
</td>
</tr>
<tr>
<td width='20%'>
<b>Project/Team Lead</b>
</td>
<td width='20%'>
%release.TeamLead%
</td>
<td width='10%'>
</td>
<td width='20%'>
<b>On Call DSE</b>
</td>
<td width='20%'>
%release.OnCallDSE%
</td>
</tr>
<tr>
<td width='20%'>
<b>Phone</b>
</td>
<td width='20%'>
%release.ContactInfo%
</td>
<td>
</td>
<td>
</td>
<td>
</td>
<td width='10%'>
</td>
<td width='20%'>
<b>Phone</b>
</td>
<td width='20%'>
%release.OnCallDSEContact%
</td>
</tr>
<tr>
<td>
</td>
</tr>
<tr>
<td width='100%' colspan='5'>
<font size='4'><b>Migration Details:</b></font>
</td>
</tr>
<tr>
<td width='20%'>
<b>Deploy Dashboard</b>
</td>
<td width='20%'>
</td>
<td width='10%'>
</td>
<td width='20%'>
<td>
</td>
<td>
</td>
<b>Deploy Task</b>
</td>
<td width='20%'>
</td>
</tr>
%createTaskTable(ParseSpecialInstuctions().Split('|'))%</table>
</div>
我想在“%%”用代码表示他们之间的变量替换值。我可以很容易地
string.Replace("%release.RFCTicket%",release.RFCTicket);
但是这在我看来有点令人费解,因为我有10个左右的文件变量。有什么内置的方法可以满足我的要求吗?任何帮助将不胜感激,谢谢!
您是否已经考虑到您的内容序列化到XML和转换到最后html使用xslt?这将允许在未对处理代码进行任何修改的情况下进行未来更改 - 只需在需要时更改xslt即可。 – Filburt 2012-02-17 15:01:10
您的发布对象属性名称是否与模板中的属性名称完全匹配? – 2012-02-17 15:02:56
@AlexK。是的,他们这样做,上面的行(替换)是我现在要做的 – 2012-02-17 15:14:33