我有一个复杂的问题,至少对我来说:),而且它会比编码更多的架构,我会说。
好的,我正在创建一个MVC网站。我有一个wcf服务,这是我与数据库,业务对象等进行通信的唯一方式。
换句话说,在我的mvc层的web.config中,我没有任何连接字符串,只有web服务mambo jambo。我没有实现默认的成员资格和角色提供程序。
我实现了自定义成员资格和角色提供程序。但是,我在服务层级使用它(我在WCF的web.config上声明它)这意味着,从MVC我调用我的webservice客户端的验证方法(client.ValidateUser(User))然后当我做我的时Membership.ValidateUser(用户名,密码)。
如果您需要知道我这样做的原因,我会添加它。请问我。
我的问题...在我的控制器中,当我将角色属性添加到我的方法时,我知道它会失败,因为mvc将尝试使用webconfig中的任何成员资格和角色提供程序...当然,我没有在mvc级别实现它,但在wcf。所以它会弹出一个notImplemented错误。我没有尝试,但我的胆量感觉。我应该在我的mvc中实现它,然后从这个自定义成员资格和角色提供者调用我的wcf(数据库调用)并将其删除我当前的成员资格提供者和角色提供者?
我知道这一切都很棘手和令人困惑。如果您有任何疑问,请告诉我。
非常感谢你。
答案 0 :(得分:0)
您必须创建Authorize
文件管理器的自定义实现,并覆盖必须进行WCF调用并完成所有工作的OnAuthorization
方法。