你如何将Entity Framework(1.0)与ASP.Net Membership一起使用?

 2023-02-16    328  

问题描述

我正在尝试为使用ASP.NET成员资格的应用程序设计实体模型.在我创建的大多数数据库模式中,记录通常最终通过ASPNET_USERS表上的UserID字段与用户相关.过去,这对我来说很好,但是现在我正在使用EF,我遇到了一些概念性问题,可以弄清楚我将如何从实体中参考用户.

例如,假设我们有一个包含”张贴”属性的”帖子”实体.我希望能够获取用用户使用post.user.username创建此帖子的用户的用户名,但是我很谨慎地基于ASPNET_USER表创建一个实体,因为他们担心创建一个模型我在更改数据库时绕过会员类.

你如何将Entity Framework(1.0)与ASP.Net Membership一起使用?

我已经考虑过仅离开post.userid字段作为GUID,然后要求任何需要知道用户名使用该GUID的代码从会员类中获取用户,但这似乎是”不依赖的”.

有人对与会员资格集成的实体模型设计有什么建议吗?我会合理地使用”只读”用户实体.

推荐答案

我的建议是:”不要.”

让我更具体.

使用UserId 作为映射的外键将您的实体模型与一般的ASP.NET成员资格联系起来,而是将SQL成员资格提供商一般.如果您想使用域身份验证或OpenID,会发生什么?

不要误会我的意思:99.9%的时间是正确的,将DB参考与外键联系在一起是正确的.哎呀,您甚至可以在这里做到这一点,但不要将其映射到您的实体模型中.您需要在会员提供者和您自己的数据之间保持逻辑分离的墙壁.您可以通过EF访问数据.您可以通过会员API访问会员数据.它们碰巧生活在同一DB中的事实,因为您碰巧使用SQL成员资格提供商是一个实现细节.

更新:我已经在博客文章.

以上所述是小编给大家介绍的你如何将Entity Framework(1.0)与ASP.Net Membership一起使用?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/33888.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。