我发现netTiers生成的代码依赖于一个确切的数据库模式,并与变化非常unforgiving。例如,向现有表中添加列 - 如果在表的中间某处添加列,除非重新编译netTiers,否则您将在运行时看到转换错误。这是因为这些列是按顺序而不是按名称访问的。 (通过查看更改日志,我发现这是作为性能改进完成的)netTiers数据库模式向后兼容
这在过去一直没有问题,但在我目前的项目中,我们试图构建一个系统零宕机升级。我们面临的挑战是数据库升级,如果我们能够在不影响代码的情况下更新数据库,这将是一件好事。
有没有人使用netTiers有类似的问题,或看着类似的要求?
将更改模板以通过名称访问列更容忍以前的模式版本?如果是这样,对我来说,我认为这将是值得轻微打击性能(3%在这里引用DataReader ordinal-based lookups vs named lookups)