我想允许匿名/尚未注册和注册的用户在我的网站上发帖。
Posts (table)
- Id (int)
- Subject (nvarchar)
- Body (nvarchar)
- UserId (uniqueidentifier)
该项目使用最新的 MS 技术(ASP.NET MVC 5+、C#...)我应该如何去做?
ASP.NET Identity 是正确的解决方案吗?
这些有什么区别:
Update我需要能够区分尚未注册的用户并将他们的帖子记录在数据库中。
Update 2然后可以选择迁移到注册帐户。就像 stackoverflow 过去如何允许匿名用户一样。
类似的东西,但与 ASP.NET Identitfy 兼容http://msdn.microsoft.com/en-us/library/ewfkf772(v=vs.100).aspx
我想回答最初的问题之一:“我需要能够区分尚未注册的用户并将他们的发帖记录在数据库中”。
我之前使用过 Simple Membership,现在正在使用 Asp.Net Identity Framework
2.2.1.在这两种情况下,我都使用匿名身份来区分尚未注册的用户和经过身份验证的用户。
- 通过添加以下内容在 Web.config 中启用匿名识别
<anonymousIdentification enabled="true" cookieName="YOUR_COOKIE_FOR_ANONYMOUS_IDENTIFICATION" />
.
- 您可以通过以下方式获取匿名ID
Request.AnonymousID
。该 id 是字符串格式的 GUID。
- 正如其他用户提到的,您可以使用任何您想要的身份系统,只需记住在注销过程中清除匿名 ID 即可。通常,在用户成功通过身份验证后,您可以将用户名/用户 ID 与匿名 ID 保存到持久存储中。通过在用户注销时清除anonymousId,您可以确保其他经过身份验证的用户将无法与相同的anonymousId 关联。
- 您可以通过以下方式清除anonymousId
AnonymousIdentificationModule.ClearAnonymousIdentifier()
。注:AnonymousIdentificationModule
位于 System.Web.Security 程序集中。您可以添加 System.Web 的引用或使用 CTRL +“。”于AnonymousIdentificationModule
在您的代码中引入 System.Web.Security。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)