您必须先调用“WebSecurity.InitializeDatabaseConnection”方法。。。

网友投稿 238 2022-09-14

您必须先调用“WebSecurity.InitializeDatabaseConnection”方法。。。

有如下代码:

[Authorize] public ActionResult Index() { ViewBag.ShowList = ShowList.GetShowList(WebSecurity.CurrentUserId); return View(); }

一运行,报错:

您必须先调用“WebSecurity.InitializeDatabaseConnection”方法,然后再调用"WebSecurity"类的任何其他方法。此调用应当放在站点根目录的 _AppStart.cshtml 文件中。

原来要加上特性

[Authorize] [InitializeSimpleMembership] public ActionResult Index() { ViewBag.ShowList = ShowList.GetShowList(WebSecurity.CurrentUserId); return View(); }

如果一个个ACTION地加,也可以加在Controller上

[InitializeSimpleMembership] public class UserController : Controller { // // GET: /User/ [Authorize] public ActionResult Index() { ViewBag.ShowList = ShowList.GetShowList(WebSecurity.CurrentUserId); return View(); }}

解决方法 1:

您可以添加 ​​[InitializeSimpleMembership]​​ 到您的控制器而不是为每个操作的顶部,可以使用​​WebSecurity.GetUserId(User.Identity.Name)​​

或者,您可以使用

var userId = Membership.GetUser(User.Identity.Name).ProviderUserKey;

参考文章:

​​http://itstrike.cn/Question/6a7fbe3b-f44e-430c-94c6-f760c713063​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:《山河令》火爆,人人都想靠耽改剧赌一把!
下一篇:lena照片的由来
相关文章

 发表评论

暂时没有评论,来抢沙发吧~