asp.net 中的转发器数据源控件中的服务器标记格式不正确

server tag is not well formed in repeater data source control in asp.net

我想在转发器中显示图片,图片来源是数据库。数据类型为 varbinary(max)。添加图片标签时收到错误提示 -

"The server tag is not well formed."

如何在数据中添加图像以及在转发器控件中添加图像。

代码

 <asp:Repeater ID="RepterDetails" runat="server" DataSourceID="SqlDataSource1">
    <HeaderTemplate>
    <table style="border:1px solid #0000FF; width:500px" cellpadding="0">
    <tr>
    <td colspan="2">
    <b>Testimonial</b>
    </td>
    </tr>
    </HeaderTemplate>
    <ItemTemplate>
    <tr style="background-color:#EBEFF0">
    <td>
    <table >
    <tr>
    <td >
    Comments:
    <asp:Label ID="lblSubject" runat="server" Text='<%#Eval("comment") %>'/>
    </td>
    </tr>
    </table>
    </td>
    </tr>
    <tr>
    <td>
    <asp:Label ID="lblComment" runat="server" Text='<%#Eval("designation") %>'/>
    </td>
    </tr>
   </ItemTemplate>
    <ItemTemplate>
          <asp:Image ID="Image1" Height="100px" Width="100px" runat="server" ImageUrl="<%# "data:Image/png;base64," + Convert.ToBase64String((byte[])Eval("organizationLogo")) %>"/>
    </ItemTemplate>
    <FooterTemplate>
    </table>
    </FooterTemplate>
    </asp:Repeater>

您需要转义双引号或对 ImageUrl 属性使用单引号。

所以这个

ImageUrl="<%# "data:Image/png;base64,"+Convert.ToBase64String((byte[])Eval("organizationLogo")) %>"

变成这个...

ImageUrl='<%# "data:Image/png;base64," + Convert.ToBase64String((byte[])Eval("organizationLogo")) %>'