【问题标题】:Entity Framework - making it read only? [duplicate]实体框架 - 使其只读? [复制]
【发布时间】:2012-11-10 00:24:23
【问题描述】:

可能重复:
How to make Entity Framework Data Context Readonly

是否有使实体“只读”的配置设置或简单方法我有一个数据访问层,它与作为 CRM 解决方案后端的数据库相对。我们不想(无意或有意)向 CRM UI 之外的数据库写入数据,但我们确实想通过几个自定义应用程序读取数据。

【问题讨论】:

标签: c# entity-framework


【解决方案1】:

对于您的自定义应用程序,将连接字符串指向仅具有只读访问权限的数据库用户。如果他们随后尝试写入数据库,您将收到错误。

http://www.joellipman.com/articles/microsoft/sql-server/454-create-read-only-database-user-in-sql-server.html

【讨论】:

    【解决方案2】:

    我选择覆盖 SaveChanges 并暂时抛出异常。

    再想一想,经过一些良好的反馈后,我不会这样做。

    【讨论】:

    • 这只是一个令人讨厌的黑客行为。我的意思是,它可能迟早会卷土重来,咬你一口(除非只有你和其他几个人都非常了解这种黑客行为)。
    • 我不同意“讨厌的黑客”评估。这就是存在虚拟方法的原因,因此如果行为不适合您的场景,它们可以被覆盖。 Anders 的解决方案是简单地相信您的开发人员不会做某事。覆盖是信任并验证。哪个更安全?相信?还是验证?也就是说,如果可以的话,请在数据库本身使用基于用户权限的方法。
    • 我们的数据库的设置方式我认为我可以将我需要的表包装在视图中,然后从这些表中创建我的实体以及使用对D B。想法?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多