我将VS2010 ASP.Net MVC3项目转换为VS2013 MVC4。现在,当我发布时,它正在将项目的内容复制到bin文件夹。
我无法理解我做了什么让它做到这一点。我如何解决它,所以它没有这样做?
答案 0 :(得分:2)
在构建期间,您的文件被错误地设置为复制到输出文件夹(\bin
)。确保每个文件的Copy To Output
设置都设置为Do Not Copy
。
通常,您不需要将大部分内容复制到bin文件夹中。发布时,所有内容页面(* .aspx,* .html,* .css等)都将通过项目中的现有内容进行发布。这是由Build Action
设置为Content
确定的。 (注意:您可以通过将“构建操作”设置为None
)
对于代码文件,可以采用两种方式。在Web应用程序项目(MVC是)中,大多数代码文件(例如控制器,模型或WebForms中的文件后面的代码)都已编译到您站点的DLL中。它们有Build Action = Compile
,这意味着它们是预先编译的,不需要包含在发布中。例外情况是App_Code中的文件,它们部署到您的站点(Build Action = Content
)并在运行时编译。您还可以选择在发布设置(设置 - >文件发布选项 - >发布期间预编译)中预编译您的网站,这将自动处理App_Code文件(即您可以将它们保留为Build Action = Content
和VS将编译它们并发布输出。)