以字符串格式(ASP)关闭图像和嵌入代码

时间:2015-11-01 17:49:58

标签: asp.net eval

我的代码位于“项目模板 - asp:转发器元素”

当我尝试将它们打印到我的页面(aspx)时,如果已经显示图像,有时嵌入的视频播放器无法显示。我认为这是因为没有关闭标签(图像和嵌入标签)。如何在StringFormat中关闭这些元素。我是编程的新手,抱歉我的英语不好。

这是我的代码:

<%#(String.IsNullOrEmpty(Eval("image").ToString()) ? "" : String.Format("<img class='img-thumbnail' style='margin-top:15px !important; margin-bottom:15px !important; width:300px; margin: 0 auto;' src='http://example.com/image/{0}'" , Eval("image").ToString()))%>


<%#(String.IsNullOrEmpty(Eval("embed").ToString()) ? "" : String.Format("<iframe style='margin-left: 20px;' width='300' height='169' src='https://www.youtube.com/embed/{0}'" , Eval("embed").ToString())) %>

1 个答案:

答案 0 :(得分:0)

我认为你错过了&gt;

src ='http://example.com/image/ {0}'&gt;

在这里:

SRC = 'https://www.youtube.com/embed/ {0}' 的&GT;

修改

可能是您可以用这种方式重写代码以获得更好的维护/可读性:

<ul>
    <asp:Repeater runat="server" ID="repeater1">
        <ItemTemplate>
            <li>
                <asp:Image runat="server"
                    Visible='<%# Eval("image") != null %>'
                    ImageUrl=<%# "http://example.com/image/" + Eval("image") %> />
            </li>
        </ItemTemplate>
    </asp:Repeater>
</ul>

此致