Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何引用.NETMVC5';在不使用视图模型的情况下从视图中删除实体框架应用程序用户?_C#_Asp.net Mvc_Entity Framework - Fatal编程技术网

C# 如何引用.NETMVC5';在不使用视图模型的情况下从视图中删除实体框架应用程序用户?

C# 如何引用.NETMVC5';在不使用视图模型的情况下从视图中删除实体框架应用程序用户?,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我使用默认的MVC5个人帐户模板和实体框架来处理身份验证。我有一个ApplicationUser,它继承了IdentityUser中的所有用户信息。当用户通过身份验证后,我可以从UserManager中获取他们的ApplicationUser,如下所示: var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext())); va

我使用默认的MVC5个人帐户模板和实体框架来处理身份验证。我有一个
ApplicationUser
,它继承了
IdentityUser
中的所有用户信息。当用户通过身份验证后,我可以从
UserManager
中获取他们的
ApplicationUser
,如下所示:

var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
var AppUser = manager.FindById(User.Identity.GetUserId());
ViewBag.User = AppUser;
var-manager=newusermanager(newuserstore(newapplicationdbcontext());
var AppUser=manager.FindById(User.Identity.GetUserId());
如何使该
应用程序用户可用于所有视图?

我不想创建ViewModel,给它指定
ApplicationUser
,然后将其发送到视图。这严重限制了灵活性


当使用基于IPrincipal的身份验证时,我可以使用
Thread.CurrentPrincipal
作为类的静态属性的一部分。在新的实体框架
IdentityUser
世界中,这类东西是如何工作的?

我并不提倡使用
ViewBag
,但是如果您确实不喜欢使用ViewModel,您可以将您的ApplicationUser添加到
ViewBag
中,如下所示:

var manager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(new ApplicationDbContext()));
var AppUser = manager.FindById(User.Identity.GetUserId());
ViewBag.User = AppUser;

我认为你最好创建自己的视图引擎来实现这一点,我真的不想创建自己的视图引擎。Razor很好。你仍然在使用基于IPrincipal的身份验证。我不想使用ViewBag。我正试图完全停止使用它。@JordanRoher-但是你宁愿通过强制视图进行数据访问来彻底打破关注点之间的分离?呵呵,我会的。我很感激我在某种程度上打破了最佳实践,但我希望能够在没有正式viewmodel的情况下访问用户数据。这不是针对企业级应用的。如果你不打算使用ViewModel,也不打算使用ViewBag,我没有其他建议。