Membership结合linq作为数据库对象,如何整合?

zhufusiji 2013-03-27 03:14:28
我重写了MemberProvider的CreateUser,方法为CreateUser(Member mem)
然后在MVC的Create方法中直接使用Membership.CreateUser(mem),它仍然提示说不符合原来的那个CreateUser方法的参数数量

我的问题是,如何强制调用我重写的CreateUser方法?

另外,我考虑很可能是我从一开始的架构整合的就不对,所以请老师们告诉我下,这个Membership和Linq To SQL到底要怎么弄才能弄到一起使用?

我的要求是只有一个用户表,不使用membership自动生成的那些表,功能就是增删改查,Modal要用Linq To SQL可能实现么?如何做?
MVC3
...全文
134 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzxnsd 2013-04-01
  • 打赏
  • 举报
回复
“重载了MembershipProvider的CreateUser函数”,那么你可以这么改。 在web.config里面有这么一段 <membership defaultProvider="DefaultMembershipProvider"> <providers> <add name="DefaultMembershipProvider" type="System.Web.Providers.DefaultMembershipProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" /> </providers> </membership> 默认指定的是微软的实现。改成自己的实现就行了。 “但是我想把它的参数改变”,参数改变了就不叫重载了,没办法用默认的方式(Membership相关控件)调用,需要从System.Configuration.Provider.ProviderBase开始,定义自己的MembershipProvider。基本上就是重新开始了。而你的业务需求很简单,根本没必要花费大量时间去实现自己的membership。
zhufusiji 2013-03-27
  • 打赏
  • 举报
回复
引用 1 楼 zzxnsd 的回复:
membership设计出来的目的就是提供一套现成的系统来解决用户和成员关系的问题。如果你不理解这套系统或者membership不能满足你的需求,就干脆点别用,自己实现。 form验证和membership是两套系统,你完全可以只用form验证而不用membership。 登陆: 用户输入用户名密码->后台得到用户名密码->用linq to sql来判断用户名密码是否正确->正确的话调用 FormsAuthentication.SetAuthCookie(..)方法。 登出:调用FormsAuthentication.SignOut(); 其他创建用户什么的自己实现就行了,看你的需求没什么复杂的逻辑。
我现在的困难在,冲在了MembershipProvider的CreateUser函数,但是我想把它的参数改变,因为我的表字段只有很少,而且有一些是默认的方法中没有的,我重写了默认方法之后,又重新写了一个CreateUser,那么如何让Membership类去调用到这个我写的CreateUser而不是默认的那个呢?
zzxnsd 2013-03-27
  • 打赏
  • 举报
回复
membership设计出来的目的就是提供一套现成的系统来解决用户和成员关系的问题。如果你不理解这套系统或者membership不能满足你的需求,就干脆点别用,自己实现。 form验证和membership是两套系统,你完全可以只用form验证而不用membership。 登陆: 用户输入用户名密码->后台得到用户名密码->用linq to sql来判断用户名密码是否正确->正确的话调用 FormsAuthentication.SetAuthCookie(..)方法。 登出:调用FormsAuthentication.SignOut(); 其他创建用户什么的自己实现就行了,看你的需求没什么复杂的逻辑。

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧