代码之家  ›  专栏  ›  技术社区  ›  Earlz

强制Subsonic忽略某个列名称模式

  •  0
  • Earlz  · 技术社区  · 14 年前

    我们使用亚音速作为一种形式(实际上更像是一个查询助手)。出于某种原因,我们有一些动态模式,因此某些表生成了列名等。好吧,到现在为止,这一切都还不错。现在,我们的生产生成列与开发生成列不匹配。首先想到的工作是在部署到生产服务器之前重新生成亚音速文件,但这看起来有点混乱。还有比这更好的方法吗?

    注意,这些生成的列实际上从来没有从ORM中使用过,但是我们有时确实使用

    var data=MyData.DynamicTable.SingleOrDefault(x => x.id==1);
    

    尽管在尝试加载时使用开发生成的亚音速文件,但这会在生产中引发错误。 GeneratedColumn10 或任何存在于开发中但不存在于生产中的东西。

    2 回复  |  直到 14 年前
        1
  •  0
  •   Earlz    14 年前

    实际上,我最终修改了sqlserver提供程序,以便它对照regex检查每个列名,以决定是否应包括该列。需要注意的是,您必须为这两个列以及它在哪里查找外键都这样做。

        2
  •  0
  •   Jürgen Steinblock    14 年前

    您可以针对生产数据库创建DAL,并将其与开发服务器一起使用。除非dev环境中的其他列不可为空,并且没有指定默认值,否则更新和插入查询也将工作。

    推荐文章