我使用<%#Eval(“Status”)%>检索了一个值我想在ascx控件中内联切换这个案例而不使用后面的类或代码。交换机案例无法请求Enum,Interface或Struc。
<span class="label <%# GetStatus(Eval("Status").ToString()) %>">
<%# Eval("Request_RequestStatus") %>
</span>
<%#
protected String GetStatus(string stat) {
var status = String.Empty;
switch (stat)
{
case "New":
status = "label-new";
break;
case "Approved":
status = "label-approved";
break;
case "InProgress":
status = "label-important";
break;
case "Overdue":
status = "label-warning";
break;
case "Pending":
status = "label-info";
break;
case "Completed":
status = String.Empty;
break;
default:
break;
}
return status;
}
%>
错误错误CS1513:}预期
答案 0 :(得分:1)
您的GetStatus()
函数应该用
<script runat=server>
protected String GetStatus(){...}
</script>
有关代码块的更多详细信息,请参阅msdn
最好使用(Container.DataItem as YourEntity).Status
而非Eval