5

我想在我的 ASP.net MVC 3 项目中使用 ELMAH 和 sql server,以及 EF 4.3。

有没有办法让创建 elmah 表的 sql 脚本自动运行?

我猜 ef 迁移可能会完成这项工作,但我还没有太多使用它们。

我的目标是找到一个解决方案,您可以在其中签出解决方案并直接运行它(到本地 sqlexpress 或部署时完整的 sql server)并让它工作,而无需手动运行各种帮助 sql 脚本

4

2 回答 2

5

添加一个空的基于代码的迁移(只需add-migration ElmahSetup在没有挂起的数据库更改时键入)。

然后添加调用以Sql()在方法中运行 elmah Up()。要使解决方案完整,您必须在Down()方法中添加相应的 drop 语句。

于 2012-03-08T11:22:18.393 回答
5

我知道这个问题是针对 EF 4.3 的,但是如果您使用的是EF 6.1,那么现在有一个 nuget 包可以为您初始化 Elmah 表和 procs:https://www.nuget.org/packages/Elmah.SqlServer。 EFInitializer/ . 将其添加到您的 Web 项目中。然后它将首先使用 EF 代码为您创建它。它将 Initializer 添加到您的 App_Start 文件夹中,因此您实际上不必添加任何代码。它将向您的数据库添加迁移,以确保它只添加一次。

于 2015-03-03T19:41:05.783 回答