0

我正在尝试从 db 中获取值

var Link = el.Element("link").Value;

<div class="hotspot" link="<%=Link%>" style="background-image:url('/content/images/site/clearpixel.gif');z-index:4000;position:absolute;cursor:pointer;top:<%=Top%>px;left:<%=Left%>px;width:<%=Width%>px;height:<%=Height%>px;"></div>

我在不断的错误中收到错误'换行符。如何摆脱这个错误

对象引用未设置为此行中的对象实例:

foreach (var el in slide.Hotspots.Elements())

当前比赛中不存在链接

 <div class="hotspot" link="<%=Link%>" style="background-image:url('/content/images/site/clearpixel.gif');z-index:4000;position:absolute;cursor:pointer;top:"<%=Top%>"px;left:"<%=Left%
4

1 回答 1

1

根据您的其他问题,您的问题是您仍在 C# 上下文中尝试编写 HTML。

当您使用<% %>语法时,这些符号(或<%=<%:或其他)之间的所有内容都是 C#,而不是 HTML。这与 Razor 不同,在 Razor 中,您可以更多地混合搭配 C# 和 HTML 代码。

因此,您遇到换行问题的原因是您正在<div...尝试编译为 C#,显然它失败了。将它移出代码块,你会没事的,比如:

<%
    foreach (var el in slide.Hotspots.Elements()) { 
        var Top = el.Element("top").Value;
        var Left = el.Element("left").Value;
        var Width = el.Element("width").Value;
        var Height = el.Element("height").Value;
        var Link = el.Element("link").Value;
 %>
 <div ...></div>
 <% } %>
于 2013-10-29T03:02:03.157 回答