ではありません。これは興味深い問題です。 Visual Studio Development Server上で実行されているASP.NET MVC3イントラネットアプリケーションがありますが、NTLMはありません。私はテストしているマシンにADドメインを持っていません。MVC3 User.Identity.Nameがnull、Enironment.UserNameが
User.Identity.Name
というユーザーにしようとすると、null参照例外がスローされますが、Environment.UserDomain
とEnvironment.UserName
を使用すると、正しい値が入力されます。
私はこれについて深刻に混乱しています。 User.Identity.Name
の使用を避けるべきですか?これがnullである理由はありますか?
UPDATE
私はちょうど私が System.Web.HttpContext.Current.User.Identity.Name
を使用する場合、それは働くことに気づいたが、ちょうどUser.Identity.Name
を使用することはできません。私はusingステートメントを紛失していますか?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
これを実行しているコードは何ですか?全体のコンテキストは何ですか? (メソッド、スレッド...) –
私はこのコードをコンストラクタのControllerクラスの内部で直接実行しています – Kev
UPDATEをありがとう。私も同じ問題があり、System.Web.HttpContext.Current.User.Identity.Nameが解決しました。ありがとう! –