0

Global.asax中,我想根据我拥有的字符串数组动态添加多种显示模式,因此:

foreach (string displayModeId in myDisplayModeIds)
{
    modes.Insert(0, new DefaultDisplayMode(displayModeId)
        {
            ContextCondition = context =>
                context.Request["DisplayMode"] == displayModeId
        }
    );
}

当然这不起作用,因为displayModeId需要在ContextCondition.

任何帮助表示赞赏。

4

1 回答 1

1

您可以在闭包中捕获它,这样它就不会在循环中从您身边跑开:

foreach (string displayModeId in myDisplayModeIds)
{
    string dmId = displayModeId;
    modes.Insert(0, new DefaultDisplayMode(displayModeId)
    {
        ContextCondition = context => context.Request["DisplayMode"] == dmId
    });
}
于 2013-02-06T17:14:42.817 回答