1

我有一个在 IIS 6 上运行的 VS 2008 Web 应用程序。在 web.Config wile 中有这样的部分:

<location path="public">
    <system.web>
        <authorization>
            <allow users="?"/>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

我有一个用户控件,用于在不同位置的许多页面上提供内容。我希望该控件根据其所在页面的位置过滤内容。例如,如果控件位于上面示例中指定的“公共”文件夹中的 aspx 页面上,我希望不显示某些信息。

我怎样才能在我的代码隐藏中做到这一点?也可能是这个 web.Config 设置完全不相关,这个问题,你决定。VB或者C#都可以,我可以翻译。

也许是这样的?If path.Contains("public") Then filterResults()

谢谢!:)

4

1 回答 1

1

我会向用户控件添加一个名为“Mode”或“ContextUrl”的公共属性或类似的东西。然后从该属性分支逻辑。您还应该有一组“默认”逻辑。

最终,与隐藏在控件实现中的东西相反,让与您的用户控件交互的“开发人员”更直观和可测试的行为是由公共属性决定的。

于 2012-11-01T17:58:14.223 回答