0

我有一个实现我自己的“权限”接口的“页面”。

public interface PagePermissions{
      Dictionary<string, Permission> readPermissions();
}


public partial class myWebPage: System.Web.UI.Page, PagePermissions
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
     Dictionary<string, Permission> PagePermissions.readPermissions()
    {
        Dictionary<string, Permission> results = new Dictionary<string, Permission>();
        return results;
    }
}

在我的母版页中,我获得了对当前 Page 对象的引用。

  Page myPage = HttpContext.Current.Handler as Page;

但我不能调用我的函数 ReadPermission 因为它没有识别它:

  myPage.readPermissions();

如何调用我实现的函数?

4

3 回答 3

6

您需要转换myPagePagePermissions.

PagePermissions myPage = HttpContext.Current.Handler as PagePermissions;
myPage.readPermissions();
于 2012-05-30T19:10:59.870 回答
1

尝试投射myPage到您的界面。

PagePermissions myPagePermissions = (PagePermissions)myPage;
于 2012-05-30T19:11:15.567 回答
0

为什么要使用接口函数的显式实现?考虑更改代码行

Dictionary<string, Permission> PagePermissions.readPermissions()
{

public Dictionary<string, Permission> readPermissions()
{
于 2012-05-30T19:22:11.703 回答