我目前正在使用创建新解决方案时使用的默认ASP.NET 4.5成员资格。我已经对它添加角色进行了一些更改,所以第四,但现在我想继续自定义我很好奇它是一个“更好的做法”来定制给定的成员资格(仍在研究这是多么可能)或者我最好尝试从头开始构建这个? 我正在努力教我的自我,我希望获得经验,因为如果我被录用,我会看到。企业是否使用ASP.net会员资格? 我当前的项目使用代码第一实体框架和LINQ。我觉得会员资格可以说很多。它执行的操作背后的代码非常少,现在我想要做出改变,这有点让我失望。
任何人都可以对此有所了解或者推荐一些好读物吗?
按要求编辑
到目前为止简单的事情就像创建用户时一样,我想添加一些字段来请求更多信息。
` protected void RegisterUser_CreatedUser(object sender, EventArgs e)
{
FormsAuthentication.SetAuthCookie(RegisterUser.UserName, createPersistentCookie: false);
string continueUrl = RegisterUser.ContinueDestinationPageUrl;
if (!OpenAuth.IsLocalUrl(continueUrl))
{
continueUrl = "~/";
}
Response.Redirect(continueUrl);
}`
我没有看到代码隐藏如何抓取表单中的数据。或者它是如何真正做到令人尴尬的。我对LINQ和Entity有很好的理解,所以我想用它来修改它,我想这怎么可能修改呢?
答案 0 :(得分:1)
最佳做法是覆盖特定方法,而不是重写全新的提供商。
public class MyMembershipProvider : MembershipProvider {}
如果你想学习,我会建议反编译提供者dll,看看底层是什么。它太大了;我不能在这里张贴他们。 Telerik JustDecompile
答案 1 :(得分:0)
根据经验,一些企业使用.NET的Custom MembershipProvider和Custom RoleProvider作为其成员资格提供者的支柱。我认为遵循类似于此示例的模式会很有帮助: Custom MembershipProvider in .NET 4.0 它应该让你开始。
答案 2 :(得分:0)
我们在多个应用程序中使用了MembershipProvider。 然后我们转移到Custom MembershipProvider,它解决了客户端的一些特定于域的请求。
当我们使用MembershipProvider
时,我们的DBA对在MSQL中创建的所有表都不满意现在我们不使用MembershipProvider并从头开始构建大部分内容。
我们确实使用了一些内置函数,例如System.Web.Security.FormsAuthentication.SignOut()等。
祝你好运..