Html.Encode&中的换行符的string.join

时间:2010-03-12 16:12:19

标签: html asp.net line-breaks html-encode

我有以下代码行。

<%= Html.Encode(string.Join(", ", item.company1.companies.Select(x => x.company_name).ToArray())) %>

是否有可能以某种方式用换行符替换逗号?

3 个答案:

答案 0 :(得分:1)

我没有对字符串进行编码并加入"<br/>",因此工作正常,如下所示。根据您的Array数据,您可能需要对其进行专门编码,但您不希望编码将用于连接字符的任何HTML语法。

<%= string.Join("<br/>", [Array]) %>

注意:新的ASP.Net 4.0代码表达式语法"<%: %>" html默认编码块的内容,因此如果您使用它,则必须使用.Replace (RememberME建议的“ * ”,"<br\>)方法。

答案 1 :(得分:0)

您是否尝试过使用Environment.NewLine?

<%= Html.Encode(string.Join(Environment.NewLine, item.company1.companies.Select(x => x.company_name).ToArray())) %>

或“\ r \ n”

<%= Html.Encode(string.Join("\r\n", item.company1.companies.Select(x => x.company_name).ToArray())) %>

编辑添加

如果公司按空格分隔,则尝试通过空格字符

加入数组
<%= Html.Encode(string.Join(" ", item.company1.companies.Select(x => x.company_name).ToArray())) %>

编辑添加2

通过html换行符加入

<%= Html.Encode(string.Join("<br/>", item.company1.companies.Select(x => x.company_name).ToArray())) %>

答案 2 :(得分:0)

我明白了。

<%= Html.Encode(string.Join("***", item.company1.companies.Select(x => x.company_name).ToArray())).Replace("***", "<br />") %>