2016-02-26 2 views
5

Я очень новичок в C#, поэтому мой вопрос может быть глупым, но я не могу решить его самостоятельно & googling. Мне нужно проверить, является ли год прыжком, поэтому:Проверка того, что год прыжок с 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: Preprocessor directives must appear as the first non-whitespace character on a line

Но почему? Не просматривайте пробел перед годом.

ответ

8

Вы использовали скриптлет <%# %> дважды, которые вложены, удалите его.

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

, к сожалению, нет, «метка сервера не хорошо сформирован» – Cove

+0

Один закрывающая скобка не хватало моего ответа, тест с обновленным кодом. – Adil

+0

Tbh лучший способ проверить год без MS SQL: ... Cove

Смежные вопросы