Asp.net mvc 4 Visual Studio 2013发行版

Asp.net mvc 4 Visual Studio 2013发行版,asp.net-mvc-4,visual-studio-2013,publish,Asp.net Mvc 4,Visual Studio 2013,Publish,我将一个VS2010 ASP.Net MVC3项目转换为VS2013 MVC4。现在,当我发布时,它正在将我的项目内容复制到bin文件夹 我不明白我做了什么使它这样做。我如何修复它,使它不这样做?在生成过程中,您的文件被错误地设置为复制到输出文件夹(\bin)。确保每个文件上的复制到输出设置设置为不复制 通常,您不需要将任何内容复制到bin文件夹中。发布时,所有内容页(*.aspx、*.html、*.css等)都将通过项目中现有的发布来获取。这是由构建操作设置为内容确定的。(注意:通过将生成操

我将一个VS2010 ASP.Net MVC3项目转换为VS2013 MVC4。现在,当我发布时,它正在将我的项目内容复制到bin文件夹


我不明白我做了什么使它这样做。我如何修复它,使它不这样做?

在生成过程中,您的文件被错误地设置为复制到输出文件夹(
\bin
)。确保每个文件上的
复制到输出
设置设置为
不复制

通常,您不需要将任何内容复制到bin文件夹中。发布时,所有内容页(*.aspx、*.html、*.css等)都将通过项目中现有的发布来获取。这是由
构建操作
设置为
内容
确定的。(注意:通过将生成操作设置为
None
,可以排除文件)


对于代码文件,有两种方法。在Web应用程序项目(MVC)中,大多数代码文件(如WebForms中的控制器、模型或代码隐藏文件)都已编译到站点的DLL中。它们具有
buildaction=Compile
,这意味着它们是预先编译的,不需要包含在发布中。例外情况是App_代码中的文件,这些文件部署到您的站点(buildaction=Content)并在运行时编译。您还可以选择在发布设置(设置->文件发布选项->发布期间预编译)中预编译您的站点,这将自动处理应用程序代码文件(即,您可以将其保留为Build Action=Content,VS将编译并发布输出).

您是如何从MVC-3转换到MVC-4的?手动创建的新项目复制了内容。这些文件夹(项目中)中的内容是否标记为“复制到输出”值?通常,内容文件都应设置为“不复制”。文件夹中的项目应设置为“如果较新,则复制”。在查看项目的bin文件夹后,由于某种原因,它实际上包含这些文件夹和文件。我删除了它们,现在正在重新发布。是否可以从VS2010项目复制项目的publish.xml文件以用于VS2013项目?如果是,怎么做?它们看起来完全不同。所以当我们发布mvc应用程序时,模型和控制器不会包含在预览文件中?@xrx215正确,它们都被编译成二进制输出。没有理由发布源代码,因为MVC不使用动态编译。