转发器中的IF条件 - asp.net

时间:2015-10-26 13:04:04

标签: c# asp.net

是否可以在asp.net webform上使用if repeater control中的条件?

如果ScopeTypeID = 2,我需要显示PercentEngineeringDesign字段值,否则显示空字段。

我在真实部分得到错误(第二个参数)。

 <td><%# If(DataBinder.Eval(Container.DataItem, "ScopeTypeID").ToString() = "2", <%#DataBinder.Eval(Container.DataItem, "PercentEngineeringDesign")%>, "")%>   </td>

2 个答案:

答案 0 :(得分:0)

我不认为你可以将<%这样的标签分开。试试吧:

<td><%# If(DataBinder.Eval(Container.DataItem, "ScopeTypeID").ToString() = "2", DataBinder.Eval(Container.DataItem, "PercentEngineeringDesign"), "")%>   </td>

或者更好的是,在模型中而不是标记中执行该逻辑。

答案 1 :(得分:0)

您可以在班级中创建其他属性并在那里完成所有工作,然后只在转发器中显示结果 就像这样:

map.indexOf(value)

然后将代码显示为public int ID { get;set;}; public int Code {get { // Do Your if condition here }}