我希望C#检测我的邮件主体中的变量,并用我们方法中已有的每个值替换它们。 我将我的邮件保存在mysql中的TEXT数据类型中 这就是我保存到我的文本中的内容:
<html>
<h1>
<span style='text-decoration: underline;'>
<strong>Solicitud</strong>
</span>
</h1>
<br/>" + "<body>Blabla" + user.Nombre + " " + user.Apellido + " p<br/>La razón a que: <br />"+ razon+ ".</body>
</html>
我希望它替换user.Nombre user.Apellido和razon,它们是方法中已有的变量
例如,如果我的方法有:
然后检测我将拥有的变量:
<html>
<h1>
<span style='text-decoration: underline;'>
<strong>Solicitud</strong>
</span>
</h1>
<br/>" + "<body>Blabla" + "MATT"+ " " + "CASA" + " p<br/>La razón a que: <br />"+ "Why not?"+ ".</body>
</html>
问题是让C#检测到字符串中已经包含变量。
答案 0 :(得分:1)
如果我正确地理解了你的问题,那么你使用的英语就很难了。
您想要替换从数据库中检索的字符串的一部分吗?
您可以执行字符串替换,如下例所示。
string email = emailAsString.Replace("+ user.Nombre +", variable1);
如果您愿意,可以在此处详细了解。
答案 1 :(得分:0)
在网上广泛搜索,有一种手动编译的方法,但它非常危险,所以我决定使用String.Format,我的邮件模板交换&#34; +变量+&#34 ;至 {#} Interpolating a string stored in a database
检索使用后: var formatedString = String.Format(string,variables);