0

MVC 3 .Net メンバーシップを使用しています。これは私にとって非常に新しいことであり、ユーザーが正常にログインすると、ユーザーをユーザーの詳細ページにリダイレクトすることに行き詰まっています。これがログオンコントローラーです。私のユーザー詳細アクションは、ユーザーの GUID が渡されることを期待していますが、その方法がわかりません。User.id を試しましたか? Membershipt.GetUser() などですが、ユーザーの詳細アクションに必要なユーザーの GUID を取得できないようです。何か案は?前もって感謝します

[HttpPost]
    public ActionResult LogOn(LogOnModel model, string returnUrl)
    {
        if (ModelState.IsValid)
        {
            if (Membership.ValidateUser(model.UserName, model.Password))
            {
                FormsAuthentication.SetAuthCookie(model.UserName, model.RememberMe);
                if (Url.IsLocalUrl(returnUrl) && returnUrl.Length > 1 && returnUrl.StartsWith("/")
                    && !returnUrl.StartsWith("//") && !returnUrl.StartsWith("/\\"))
                {
                    return Redirect(returnUrl);
                }
                else
                {
                    return RedirectToAction("Details", "User", new { id = User.??????});
                }
            }
            else
            {
                ModelState.AddModelError("", "The user name or password provided is incorrect.");
            }
        }

        // If we got this far, something failed, redisplay form
        return View(model);
    }
4

1 に答える 1

0

クイック検索で見つけたのは、解決策や例ではなく、問題だけです。これ自体は何の意味もありませんが、私は "AccountModel" と "LogOnModel" の名前空間とそれに関連するメソッドに精通していません。しかし、私はまだ助けられる可能性があります。

最初の質問: GUID はどこに保存されますか? ディレクトリ (AD/LDAP) またはデータベース (SQL) を使用していますか。GUID は「そこに」あり、すでにアクセスできる場合は、model.GUID のようなものではないでしょうか。あなたの ValidateUser はユーザー名を見つけましたが、GUID について「何も知りません」。たとえば、ADODB、Linq、および DirectorySearcher はすべて、有効なユーザー名とパスワードを取得している場合に GUID を取得する比較的簡単な方法を備えています。

于 2012-05-02T11:26:33.933 に答える