我试图在ListView控件项模板内调用一个函数。该功能可在发生组更改时添加新行。
<ItemTemplate>
<%# AddGroupingRowIfParentHasChanged() %>
<tr style="">
<td><asp:Label ID="ClauseLabel" runat="server" Text='<%# Eval("Clause") %>' /></td>
<td><asp:Label ID="ClauseNameLabel" runat="server" Text='<%# Eval("ClauseName") %>' /></td>
<td><asp:Label ID="SortOrderLabel" runat="server" Text='<%# Eval("SortOrder") %>' /></td>
<td><asp:LinkButton ID="btnDeleteClause" runat="server" CssClass="btn btn-sm btn-danger" CommandName="DeleteClause"><i class="fa fa-trash"></i></asp:LinkButton></td>
</tr>
</ItemTemplate>
我正在使用一个驻留在MVC应用程序内部的Web表单。 该页面曾经是Webform应用程序的一部分,但我希望将其移至新的MVC应用程序中。由于表单的整体复杂性,我想避免将其重新开发为mvc。
问题是我无法打电话给AddGroupingRowIfParentHasChanged()
我在此行遇到的错误是,名称'AddGroupingRowIfParentHasChanged()'在当前上下文中不存在。
我似乎找不到任何解决方法。
答案 0 :(得分:0)
您应使用@foreach
作为数据源,并用诸如此类的剃须刀语法替换服务器控件。
MVC视图引擎在版本高于1.0的剃须刀中不支持<% %>
@foreach(var item in datasource){
<tr style="">
<td><label>@item.Clause</label></td>
<td><label>@item.ClauseName</label></td>
<td><label>@item.SortOrder</label></td>
<td><button Id="btnDeleteClause" class="btn btn-sm btn-danger" ><i class="fa fa-trash"></i></button></td>
</tr>
}
答案 1 :(得分:0)
当我通过代码进行复制时,这似乎是Visual Studio的问题。我注释掉了这些行,构建了解决方案,然后重新添加了这些行,就可以了。