2012-09-06 46 views
0

问题的总体思路是,如果你能想象如何通常在任何给定的网站上创建一个帐户。注册后,您完成的操作与您已登录的帐户相对。设想您的登录包含多个帐户,但您希望完成的操作只针对通过下拉菜单选择的个人帐户。下拉从属页面

所有的网页在整个网站都是一样的,你只需要选择谁来完成这个动作。目前,我正在发布用户名以及我预先形成的每个操作,以便确定由谁来完成此操作。但我认为有人可能会对如何更好地实现这一目标有一些想法,并以更清洁的方式达到相同的结果?

由于现在我所做的只是在每个表单的顶部添加一个选择框(在用户导航时重置为默认值,令人讨厌的我知道!)。我不确定某种助手是否是一个很好的解决方案,可以先拦截所有操作并添加用户名?我应该在哪里维护当前选择用户名的状态,可能是cookie或其他内容?一般只是混淆了什么样的合作伙伴可能最适合这个问题。

任何想法将非常感激!

+0

会话或饼干看起来合理的地方来存储选定的用户名。 –

+0

关于通过javascript和每个请求传递的cookie来维护下拉菜单的想法,但它似乎有点混乱?必须抓住它并且一直设置它,并且必须将它写入每个帖子以发送到服务器? – Sparkle

回答

0

我认为最好的方式在服务器端检查登录状态并使用标准的FormsAuthentication,比你在User.Identity.Name有你活动的用户名。

所以在登录时,你应该设置身份验证coockie:

FormsAuthentication.SetAuthCookie(username, true); 

而注销或更改用户:

FormsAuthentication.SignOut(); 

这是非常标准的功能,你可以看到它在默认的应用程序,ASP。网络mvc 3创建。

链接,您可能需要: