0

Web フォームと MVC の両方を使用する Web アプリケーションがあります。私は正常に動作する Web フォームの関数を持っています。MVCコントローラーで参照したい

これは、私が Web フォームで使用する関数です。

public string getClaimValue()
{
    string claimvalue = null;
    var claimsId = Page.User.Identity as IClaimsIdentity;
    if (claimsId != null)
    {
        var claims = claimsId.Claims;
        foreach (var claim in claims)
        {
            string claimtype = claim.ClaimType.ToString();
            int index = claimtype.IndexOf("MBUN");
            if (index > 0)
            {
                claimvalue = claim.Value;
            }
        }
    }
    return claimvalue;
}

しかし、この関数を MVC コントローラーの下に置くと、'Page' の下に赤い線が表示され、'The name does not exist in current context.' と表示されます。「ページ」を削除した後、Web フォームのように期待する値が得られませんでした。あなたの助けが必要です。ありがとう。

4

1 に答える 1

1

ページは Web フォーム固有のオブジェクトです。

それを次のように置き換えます。

System.Web.HttpContext.Current.User.Identity
于 2013-06-25T17:41:35.293 に答える