【问题标题】:Developing custom authorization service with Entity-Framework and Silverlight WCF RIA-Services?使用 Entity-Framework 和 Silverlight WCF RIA-Services 开发自定义授权服务?
【发布时间】:2010-11-05 04:23:24
【问题描述】:

我正在拼命尝试使用 RIA 服务进行开发,但我希望 User 和 Role 类是由 EDM 设计器生成的实体。
问题在于,我不能从 UserBase 继承,因为实体已经从 EntityObject 继承。
我尝试按照我在网上的几次讨论中阅读的内容,并使用IUser 接口实现了用户的部分类,让AuthenticationService 继承自LinqToEntitiesDomainService<MyEntities> 并实现IAuthentication<User>

但是由于我觉得这是一条死胡同,因为我一直在到处出错而没有结果,所以我想我可以将我的问题发布给那些经历过并愿意分享他们一直在争取的知识的人,让我的生活更轻松。

求求你,请只分享你有经验的想法,我花了很多时间寻找解决方案。

更新:
我设法让它编译并运行,但现在我有一个非常奇怪的情况:应用程序运行几秒钟后,它消失了(我使用 Out-Of-Browser),窗口框架仍然存在,但没有内容!

这是我为使其编译所做的工作:

  • 生成实体模型实体
  • 使User 类实现IUser
  • 标记实现的Name 属性,该属性返回具有KeyDataMember 属性的用户名
  • DataMember 属性上的 Roles 属性
  • 然后我运行项目,它确实编译了,但几秒钟后内容消失了,没有让我知道内部异常的来源!

我可以说消失是在输出窗口中打印以下内容后发生的:

'sllauncher.exe' (Silverlight): Loaded 'ProxyBuilder'

然后,当它消失时,它写道:

'sllauncher.exe' (Silverlight): Loaded 'C:\Program Files (x86)\Microsoft Silverlight\4.0.50917.0\en-US\System.Runtime.Serialization.debug.resources.dll'
'sllauncher.exe' (Silverlight): Loaded 'C:\Program Files (x86)\Microsoft Silverlight\4.0.50917.0\en-US\mscorlib.debug.resources.dll'

我浏览过的资源:

【问题讨论】:

  • 您是在问为什么它会崩溃并丢失窗口,还是您是在问如何通过 EDM 进行安全保护?
  • 是的。正如我在问题中所说,我想使用由 EDM 设计器生成并从 EntityObject 继承的 User 类作为 RIA 身份验证服务的 User 类。

标签: silverlight entity-framework wcf-ria-services custom-authentication entityobject


【解决方案1】:

您需要研究实现自定义成员资格和角色提供程序,然后您可以连接到您的数据库以查询角色和身份验证相关信息。让我知道这是否有帮助。看这里 http://msdn.microsoft.com/en-us/library/f1kyba5e.aspx 实现 memberhsip 提供者

谢谢, 阿杰。

【讨论】:

    【解决方案2】:

    原来Nikhil Kothari已经为我们完成了这项工作,它包含在RiaEssentials项目中。

    阅读this博客了解详情。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-09
      • 1970-01-01
      • 2013-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多