【问题标题】:How to assign HTML value to a asp.net string variable如何将 HTML 值分配给 asp.net 字符串变量
【发布时间】:2011-02-25 07:49:03
【问题描述】:

我正在使用 asp.net 和 C#。我想以 HTML 格式向我的用户发送邮件,我有 HTML 格式的内容,可以这样说

    <table style="width:100%;">
     <tr>
       <td style="width:20%; background-color:Blue;"></td>
       <td style="width:80%; background-color:Green;"></td>
     </tr>
    </table>

现在我无法将其分配给字符串变量,以便可以将其作为邮件发送。 请让我知道如何将整个 HTML 内容绑定到一个变量中。

另外,请注意,上面的代码只是一个演示,我有大约 100 行 HTML 代码。

【问题讨论】:

    标签: c# asp.net html string email-templates


    【解决方案1】:

    如果要在代码中显式声明字符串:

    string html =
    @"<table style=""width:100%;""> 
         <tr> 
           <td style=""width:20%; background-color:Blue;""></td> 
           <td style=""width:80%; background-color:Green;""></td> 
         </tr> 
        </table>";
    

    响应您的评论,插入值,使用StringBuilder 在内存中构建字符串非常简单,例如,

    var html = new StringBuilder("<table style=\"width:100%;\">");
    html.Append("<tr>");
    html.Append("<td style=\"width:20%; background-color:Blue;\">");
    html.Append(yourAuthorNameString);
    //etc...
    

    或移至适当的 html 构建器或模板系统,例如 HTML Agility PackNVelocity

    【讨论】:

    • -1: 转义序列\" 不会像您期望的那样在以@ 开头的字符串中工作。请改用双引号 (he-he)。
    • 正在解决这个问题。在我转义字符串后加上 @ 前缀,以防提问者想要保留换行符,并忘记切换转义。
    • 如何在此提供网址、作者姓名,请帮忙
    【解决方案2】:
    string myHtml = @"<table style=""width:100%;"">
         <tr>
           <td style=""width:20%; background-color:Blue;""></td>
           <td style=""width:80%; background-color:Green;""></td>
         </tr>
        </table>";
    

    还是我误解了你的问题?在那种情况下,你在什么阶段遇到了什么问题?

    【讨论】:

    • 嗨 Fyodor,这对我来说很好,但我想在这些代码之间分配值,比如在这些 myVariable 之间
    【解决方案3】:

    我会将它保存在一个 html 文件中,您可以根据需要打开并阅读它。好老System.IO.File.ReadAllText()。将大字符串直接放入源代码中只是乞求频繁的重新编译和部署。

    【讨论】:

    • 这很好,但我的问题是我必须将我的参数放入该 HTML 代码中,如会员名称、文章名称、URL 等。我怎样才能做到这一点?请帮忙
    • 您已经回答了您提出的问题。如果你想要一个不同问题的答案,你应该首先问那个问题。我建议你继续提出另一个问题。
    • 您好 Fyodor,感谢您的关注,但是您是否希望我发布另一个问题来询问如何在您提供的 HTML 示例中放置一个变量,即使在这种情况下我必须提供这篇文章的链接,让用户更容易理解这个问题。
    • @Zero 使用适合 string.Format 语法的占位符
    【解决方案4】:

    使用 @" 然后你的 html(记得用 "" 替换 ")然后关闭 " 和 ;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-19
      • 2018-10-08
      • 1970-01-01
      • 2015-05-04
      • 1970-01-01
      • 2020-05-12
      • 2022-06-15
      • 2017-12-12
      相关资源
      最近更新 更多