我有许多我在不同项目中重用的用户控件。它们都在网站项目中。在为新客户进行扩展时,我正在预编译完整的网站并进行部署(其中包含大约 600 个用户控件和页面)。如果我必须在任何页面上进行小修改并想要部署它,我必须在我的机器上预编译整个项目大约需要 15-20 分钟。
有没有办法只预编译和部署网站的修改或选定项目?
谢谢!
我有许多我在不同项目中重用的用户控件。它们都在网站项目中。在为新客户进行扩展时,我正在预编译完整的网站并进行部署(其中包含大约 600 个用户控件和页面)。如果我必须在任何页面上进行小修改并想要部署它,我必须在我的机器上预编译整个项目大约需要 15-20 分钟。
有没有办法只预编译和部署网站的修改或选定项目?
谢谢!
我建议您将UserControls
自己的项目(Web 部署项目)放在同一个解决方案中,但需要很多,这会将它们编译成 .dll:
IE:
Namespace.Module1.UI.dll
Namespace.Module2.UI.dll
Namespace.Module3.UI.dll
经过长时间的搜索,答案是否定的!
如果您使用“允许此预编译站点可更新”发布,您可以预编译某些内容并仅发布这些内容。
例如,如果您在上次发布后只更改了 .cs 文件中的代码,有时您可以只发布新的 App_Code.dll 就可以逃脱惩罚,但也有一些棘手的情况……例如,如果您更改了 .cs 文件中的代码,您的一个页面中的代码取决于,您可能还需要发布该页面的新预编译版本。(我问过为什么会出现在这里,但到目前为止还没有人给出好的答案。)
在某些情况下,您甚至可以发布预编译的页面和用户控件,但这里也可能出现令人讨厌的情况。例如,如果您的页面使用母版页和用户控件,您可能还需要这些新的预编译版本。