通过转发器控件中的嵌套集合循环

rro*_*oss 1 c# asp.net webforms

我有一个列表对象

List<Documents>
Run Code Online (Sandbox Code Playgroud)

,在里面,我有另一个帐户列表.

List<Accounts>
Run Code Online (Sandbox Code Playgroud)

从我的代码隐藏我将List连接到转发器控件

rptDocumentListings.DataSource = List<Documents>;
rptDocumentListings.DataBind();
Run Code Online (Sandbox Code Playgroud)

当转发器循环遍历List中的每个项目时,我希望它也通过每个嵌套帐户列表循环,然后使用
标签呈现.这是我到目前为止所尝试的:

//in the dataRepeater
<%# parseAccountNumbers(Eval("Accounts"))%>

//method in codebehind
public string parseAccountNumbers(List<Account> accounts)
    {
        string allAccounts = string.Empty;

        foreach (var item in accounts)
        {
            allAccounts += string.Format("{0}<br />", item.AccountNumber);
        }

        return allAccounts;
    }
Run Code Online (Sandbox Code Playgroud)

我得到的错误是'无法从'对象'转换为'System.Collections.List'有人可以指出我正确的方向吗?提前致谢.

Joe*_*Joe 5

更改

<%# parseAccountNumbers(Eval("Accounts"))%>
Run Code Online (Sandbox Code Playgroud)

<%# parseAccountNumbers((List<Account>)Eval("Accounts"))%>
Run Code Online (Sandbox Code Playgroud)

DataBinder.Eval返回一个Object,你的方法需要一个List<Account>.