2

IIdentityにexentionメソッドを使用しようとしています

これが私のクラスです:

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」が見つかりませんでした

4

1 に答える 1

7

この拡張メソッドが定義されている名前空間をビューのスコープに持ってきたことを確認してください。

@using NameSpaceInWhichTheMyIdentityStaticClassIsDefined
@User.Identity.FullName()

または、各ビューにこの名前空間が追加されないように多くのビューで使用する場合は、 (と混同しないでください)の<namespaces>セクションに追加することもできます。~/views/web.config~/web.config

<add namespace="NameSpaceInWhichTheMyIdentityStaticClassIsDefined" />
于 2012-08-23T16:10:40.493 に答える