【问题标题】:How can I publish an ASP.NET MVC project from the command line?如何从命令行发布 ASP.NET MVC 项目?
【发布时间】:2009-04-04 21:51:10
【问题描述】:

我有一个现有的网站,它监视 SVN 存储库的更改,当有一个签入时,新网站是使用 aspnet_compiler 构建的,然后生产网站上的内容的差异是 sftp'd up到生产 Web 服务器。整个持续集成过程是使用 Cruisecontrol.net 构建的。

我已将整个站点重构为使用 ASP.NET MVC,现在我正尝试将其集成到我的构建过程中。似乎这已经改变了,我没有得到与以前的 MVC 站点相同的行为。不幸的是,我没有取得太大进展,因为似乎还没有人这样做。有没有人有这样的东西可以以任何形式工作?

像“常规项目”一样使用“devenv”自动化命令行也不起作用。有 /Build 命令行开关,但它们只是就地构建。此命令行不公开 UI 中内置的“发布”机制。项目目录中甚至还有一个 {Project Name}.Publish.xml 文件,它看起来像是需要发布的清单。只是没有办法自动化。

我只是想从命令行模拟 VS 2008 MVC 项目中构建菜单下的“发布 {项目名称}”。

【问题讨论】:

    标签: asp.net-mvc model-view-controller aspnet-compiler


    【解决方案1】:

    如果您使用 CruiseControl.net,那么您已经完成了 85% 的工作。你可以使用 NAnt 吗?那肯定是要走的路。

    如果没有,那么我会考虑在命令行中使用 msbuild 而不是 devenv,因为它不是为了满足您的需求而设计的。

    NAnt 绝对是一个不错的选择。尽管他们对 msbuild 进行了所有更改,但它无疑是一个很好的竞争者。 Nant 刚刚为它注入了新的活力,所以它应该仍然是一个很好的选择。

    【讨论】:

    • +1 遵循尼克·德沃尔的建议。这是最好的方法,有很多 NANT 脚本可供使用。
    【解决方案2】:

    当您创建 MVC 项目时,这是一个标准的 .net 项目,而不是“Web 项目”,它们不是一回事。我认为 aspnet_compiler 仅适用于 Web 项目,所以也许这就是导致您出现问题的原因。我不知道您使用的是哪个构建工具,但请尝试像构建任何其他 .net 项目一样构建它。

    【讨论】:

    • 我只是想模拟 VS 2008 MVC 项目中构建菜单下的“发布 {项目名称}”。
    猜你喜欢
    • 1970-01-01
    • 2022-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多