2013-06-03 2 views
4

При попытке построить решение я получаю предупреждение, Атрибут должен быть заключен в кавычки. Как заключить атрибут CommandArgument в кавычки?Атрибут должен быть заключен в кавычки

<asp:LinkButton Runat="server" ID="lkAcknowledge" Visible="false" CommandName="Acknowledge" CommandArgument=<%# DataBinder.Eval(Container.DataItem, "AssignmentID")%> >Acknowledge</asp:LinkButton>

ответ

8

использования одинарные:

<asp:LinkButton Runat="server" ID="lkAcknowledge" Visible="false" CommandName="Acknowledge" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "AssignmentID")%>'>Acknowledge</asp:LinkButton>

+0

Спасибо! Я пытался использовать двойные кавычки. – stackuser

+0

@stackuser Двойные кавычки не допускаются, потому что вам нужно определить строки из тега ASP Eval '<%# %>', и синтаксический анализатор не сможет отличить 'CommandArgument =" ... "' и 'Eval ("...") '. Забавный факт дня. :) – qJake

5

Используйте одинарные кавычки:

CommandArgument='<%# DataBinder.Eval(Container.DataItem, "AssignmentID")%>' 

Примечание Вы можете также использовать сокращенную Eval, так как ASP.NET 2.0, чтобы избавиться от некоторых из шума:

CommandArgument='<%#Eval("AssignmentID")%>'