我正在使用Visual Studio。我有一个解决方案,其中包含几个Web项目(.net MVC 4)。所有这些Web项目都使用相同的JavaScript库。目前,我将库复制到每个项目中,但这不可能是最终解决方案。在所有项目之间共享这些库(资产)的最佳方法是什么?只需链接它们吗?或者是否可以创建一个项目并在所有项目中引用它?
更新
从另一个项目“链接”JavaScript文件不是可行的解决方案,因为我必须链接数千个文件(我正在使用的一个库是ExtJs),这使得无法构建项目...
可能的解决方案
目前我有一个名为“Web”的(Web)MVC项目和一个名为“ClientScript”的(类库)项目,其中包含在多个Web项目之间共享的所有JavaScript文件。由于链接所有所需的JavaScript文件不是可行的解决方案(因为这涉及成千上万的文件,会导致Visual Studio冻结),我使用每个Web项目中的Build Events(Project -> Properties -> Build Events -> Post-build)将所有所需的JavaScript文件复制到各个项目中。我的Web项目中的Post-build命令行如下:
start xcopy "$(SolutionDir)ClientScript\Frontend\*" "$(SolutionDir)Web\Scripts" /r /s /i /y /D /E
每次构建您的Web项目时,所有更改过的JavaScript文件都会从ClientScript项目复制到您的Web项目中。
在开发JavaScript时,我运行一个小型“文件监视器”工具,当文件更改时自动将其从ClientScript项目复制到每个Web项目中。这样,当我对其中一个Javascript进行更改时,就不必每次都构建Web项目。