1

我想保存一行的创建时间,所以我创建了一个日期时间列并将其默认值设置为 Getdate()。但是当我从 SQLMetal 生成 dbml 文件并从中重新创建数据库时,该函数丢失了。

在运行 SQLMetal 时,我已将 /functions 参数添加到命令行,但这并没有解决问题。

或者,是否有任何其他方法可以节省行创建时间,可以通过 SQLMetal 进行逆向工程?

4

1 回答 1

0

我找到了一种解决此问题的方法,方法是在 INSERT 之后创建一个触发器来更新列。但是SQLMetal也不提取触发器,所以我使用方法隐藏来重载DataContext的CreateDatabase()方法,并在调用base方法后添加触发器手册。

这不是一个理想的解决方案,因为没有编译器检查触发器的 SQL 中的错误,但我将创建一个单元测试来自动检查它。

于 2010-04-23T10:15:52.373 回答