如何在html中使用C#代码?

时间:2012-04-08 11:14:18

标签: asp.net html

我在我的html中使用此代码:

<a href="<%# ((bool)Eval("IsLinkToOther")) ? Eval("NewsLink") : ../News.aspx?NewsId=Eval("NewsId") %>"><%# Eval("Title") %></a>

或者这个:

<a <%if(((bool)Eval("IsLinkToOther")))
   { %>
     href="<%#Eval("NewsLink")%>"                               
<% } %>
 <%else
   {%>
     href="../News.aspx?NewsId=<%#Eval("NewsId")%>"
<% } %> ><%# Eval("Title") %></a>

但它不起作用,我如何使用它们,请帮助,谢谢......

3 个答案:

答案 0 :(得分:1)

在客户端上呈现和解释纯HTML。 C#通常在服务器端使用(例如在aspx文件中)。

为了让它运行,您必须从支持ASP.NET的服务器(例如启用了ASP.NET的IIS)提供服务。

如果您正在寻找客户端功能,则应使用Javascript。

答案 1 :(得分:1)

您是否尝试过添加

runat="server"

属性为HTML标记?

答案 2 :(得分:0)

除非绝对必要,否则不要这样做 。将表示层与代码隐藏混合起来是一个非常糟糕的习惯。

在我看来,正确的方法是利用你使用asp.net的事实。

Page.aspx

<asp:HyperLink ID="myLink" NavigateUrl="" runat="server" />

Page.aspx.cs

myLink.NavigateUrl = SomeClass.IsLinkToOther ? SomeClass.NewsLink : "~/News.aspx?NewsId=" + SomeClass.NewsId;