用c#

时间:2016-02-26 06:58:15

标签: c# sql-server

我对C#很新,所以我的问题可能很愚蠢,但我真的无法自己解决这个问题。谷歌搜索。我需要检查一年是否飞跃,所以:

<mso:if runat=server condition='<%# DateTime.IsLeapYear(2000)%>'>

工作正常。但我需要从某个地方获得年份,例如MS SQL:

 YEAR(getDate()) AS yarr

...

<mso:if runat=server condition='<%# DateTime.IsLeapYear(<%#Convert.ToInt32(DataBinder.Eval(Container.DataItem, "yarr"))%>)%>'>

错误:

  

CS1040:预处理程序指令必须显示为第一个   一行中的非空格字符

但为什么呢?在一年之前看不到任何空间。

1 个答案:

答案 0 :(得分:8)

您使用了两次嵌套的scriptlet <%# %>,删除了一个。

condition='<%# DateTime.IsLeapYear(Convert.ToInt32(DataBinder.Eval(Container.DataItem, "yarr")))%>'