【问题标题】:Extension of IIdentity身份扩展
【发布时间】:2012-08-19 05:16:15
【问题描述】:

我正在尝试对 IIdentity 使用扩展方法

这是我的课:

public static class MyIdentity 
{
    public static string FullName(this IIdentity identity)
    {
        return "John Doe";
    }
}

我正在尝试像这样在我的视图中使用它:

@Context.User.Identity.FullName()

但我收到以下错误:

“System.Security.Principal.IIdentity”不包含“FullName”的定义,并且找不到接受“System.Security.Principal.IIdentity”类型的第一个参数的扩展方法“FullName”

【问题讨论】:

    标签: c# asp.net-mvc extension-methods membership-provider iidentity


    【解决方案1】:

    确保您已将定义此扩展方法的命名空间纳入您的视图范围:

    @using NameSpaceInWhichTheMyIdentityStaticClassIsDefined
    @User.Identity.FullName()
    

    或者,如果您想在多个视图中使用它以避免在每个视图中添加此命名空间,您也可以将其添加到 ~/views/web.config<namespaces> 部分(不要与 ~/web.config 混淆):

    <add namespace="NameSpaceInWhichTheMyIdentityStaticClassIsDefined" />
    

    【讨论】:

      猜你喜欢
      • 2019-02-19
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      • 2015-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-09
      相关资源
      最近更新 更多