【问题标题】:How to dynamically change fields in an .NET ORM如何动态更改 .NET ORM 中的字段
【发布时间】:2010-05-06 22:54:16
【问题描述】:

我在 ASP.NET 中工作的应用程序中,用户经常希望添加字段或更改字段名称。

我希望能够有一个经过解析的 xml 架构,并从中创建一个动态对象模型,可以在整个应用程序中访问。

我最初的反应是这不现实。我认为它的动态性质具有灵活性。我认为我尝试构建它的人不会介意重新编译。

即使重新编译了应用程序,我也不知道如何在我的代码中抽象出足够多的访问数据以允许用户更改属性名称等。当属性可能发生更改时,如何编写 LINQ?

简而言之,这里有两个问题:1) 有没有办法动态生成数据库的对象模型,以及 2) 有没有办法足够抽象,以便在属性更改时访问数据库的代码不会中断?

【问题讨论】:

    标签: .net orm


    【解决方案1】:

    1) 有没有办法动态 生成对象模型 数据库

    是的

    2) 有没有办法抽象掉 足以让代码访问 属性时数据库不会中断 改变?

    是的

    但是,对于这种情况,您不需要 ORM。您甚至可能不需要关系数据库,因为关系数据库不会为您做很多事情。

    您可能想要查看文档或对象数据库。找到一个支持 Linq 的会很困难。

    从根本上说,您和您的客户必须了解这不是传统的关系数据库应用程序。您正在构建以前构建过的东西,但从未真正以主流方式构建过。与重用现成的技术和模式相比,您可能会更频繁地开辟新天地。

    如果您喜欢它的新颖方面,这可能是一个有趣的项目;如果您的客户希望该解决方案与标准关系解决方案一样简单和现成,这可能是一场噩梦。

    【讨论】:

    • 所以你是说它需要解析 XML?当架构更改时,您将如何解决包装数据源所需的任何类都会更改的事实?那不需要重新编译吗?
    • 我没有说任何关于解析 XML 的事情。如果您的数据源周围的代码足够通用,那么当架构更改时您不需要重新编译它。我认为您需要对一些解决方案进行原型设计,以便更好地了解技术要求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-22
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 2012-03-31
    • 2022-01-23
    相关资源
    最近更新 更多