我有一个电子邮件模板,并且已将1个参数绑定到此模板(this.OrderCode)并且可以正常工作。因此,现在我需要绑定另一个参数。
如下所示的电子邮件模板,
string OrderTemplate="<p><%=this.OrderCode%></p><p><%=this.ReferredTo%></p>";
tempValues comes like below,
[0]this.OrderCode
[1]ODR5000
[2]this.ReferredTo
[3]Janez Smithson
使用下面的代码我需要显示两个以上的值。在这里仅显示第一个值(ODR5000)
public string EmailTemplate(string OrderTemplate, params string[] tempValues)
{
string templatebody = string.Empty;
try
{
templatebody = OrderTemplate;
for (var i = 0; i < tempValues.Length; i++)
{
templatebody= templatebody.Replace("<%={0}%>".FormatWith(tempValues[i]), tempValues++);
}
}
catch (Exception ex)
{
throw ex;
Log4NetLogger.Log(ex);
}
return templatebody;
}
答案 0 :(得分:0)
我有非常相似的功能。
for (int i = 0; i < tempValues.Length; i++)
{
var pattern = string.Format(@"(\[{0}\])", i);
templatebody = Regex.Replace(templatebody, pattern, tempValues[i].ToString());
}