我有一个SQL数据库,我有一个带换行符的文本。但在转发器中,文本没有中断。是否有解决方案,转发器休息?
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="SqlDataSource1">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td></td>
<td colspan="2" style="text-align:center"><%# Eval ("Titel") %></td>
</tr>
<tr>
<td><asp:Image ID="Image1" runat="server" ImageUrl='<%# Eval("Bild") %>' /></td>
<td><%# Eval ("Inhalt") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
答案 0 :(得分:0)
问题很可能是换行符存储为OS环境中使用的换行符(例如Environment.NewLine)。这些换行符在HTML中不会显示。
您需要在转发器代码中使用HTML换行符<br />
替换它们:
<td><%# ((string)Eval ("Inhalt")).Replace(Environment.NewLine, "<br />") %></td>
当然,如果使用视图模型在代码隐藏中准备数据,这看起来会更好,但唉,它可以工作。