Visual Studio intellisense与pageBaseType不兼容

时间:2015-01-26 09:38:05

标签: c# asp.net-mvc visual-studio visual-studio-2013

我刚刚更改了web.config

中的pageBaseType
<pages pageBaseType="IdentityAPI.AppViewPage">

这是AppViewPage

public abstract class AppViewPage<TModel> : WebViewPage<TModel>
{
    protected AppUser CurrentUser
    {
        get
        {
            return new AppUser(this.User as ClaimsPrincipal);
        }
    }
}

public abstract class AppViewPage : AppViewPage<dynamic>
{
}

问题是当我在编辑视图页面时,intellisense无法识别CurrentUser

有什么办法可以解决吗?

1 个答案:

答案 0 :(得分:0)

问题是您已将CurrentUser标记为受保护,这意味着它只对自身或从其继承的类可见。

有关受保护https://msdn.microsoft.com/en-us/library/bcd5672a.aspx

的说明,请参阅此处

要解决此问题,只需将辅助功能修改器更改为公开

即可
public abstract class AppViewPage<TModel> : WebViewPage<TModel>
{
     public AppUser CurrentUser
     {
          get
          {
              return new AppUser(this.User as ClaimsPrincipal);
           }
     }
 }