Visual Studio 2010 - 部分发布网站?

3
我刚刚完成了一个图片较多的网站,并将其发布到FTP服务器。发布时间大约需要5分钟。是否有办法配置只发布特定文件类型?我想只在文件扩展名为(.config, .aspx, .cs, .asmx, .js, .html, .css, .master)时推出更改。

这个可行吗?


你尝试使用过Copy-Web-Tool吗?在那里,你可以选择单个文件或仅更新的文件等。无论如何,在选择“发布”或“复制”之间有很大的区别。发布->你可以选择预编译你的源代码文件。复制->你也必须复制源代码文件 - 因为它们在相应的aspx文件的第一次调用时被编译。 - Pilgerstorfer Franz
复制网站工具在哪里找到? - James Hill
1
在解决方案资源管理器中右键单击项目元素 - “复制Web”。如果您找不到它,可能是通过选择“文件 - 新建项目 - Web - ASP.NET应用程序”而不是“文件 - 新建网站”来创建您的网站。不幸的是,这会影响某些选项的查找位置。 - Pilgerstorfer Franz
非常有帮助。从来不知道那里有这个功能。谢谢! - James Hill
3个回答

4

不,发布过程会将整个网站都发布上去。

先在本地计算机上进行发布,然后使用FTP工具(Filezilla、CoreFTP等)选择性地上传文件到服务器上。


发布到本地似乎是一个不错的选择。不过,像VS这样的IDE却不让你控制这个,这似乎有点傻。 - James Hill
@Quickfire55,它提供了预编译程序集的固定命名和强命名选项,因此可以这样做。在强类型可更新发布中,引用的处理可能会有问题。无论如何,让我们希望他们在未来的版本中提供这个功能 :) - Jayesh
据说新的2012.2更新应该允许您发布特定的文件--http://www.west-wind.com/weblog/posts/2013/May/10/Publish-Individual-Files-to-your-Server-in-Visual-Studio-20122--但我还没有弄清楚如何使其工作:上下文菜单选项不在那里,但快捷键`ALT+P,ALT+P`是可用的。 - drzaus

1

很遗憾,这是不可能的。发布操作要么全部成功,要么全部失败。

尽管如此,如果只有代码后台文件发生更改而标记/图像/其他内容没有更改,我有时会仅复制DLL程序集(从bin目录到IIS网站文件夹)。


1

你可以将不想发布的内容的Build Action设置为None

这些内容不会被复制到部署目录中

我刚刚确认过它是有效的(我在一个MVC3网站上进行了测试)

所以你需要更改每个要排除的文件的设置,但你可以同时更改多个文件的设置,而文件夹无法被排除

enter image description here


然后他可以选择1000张图像并将它们全部设置为“无”。选择第一张,按住Shift键选择最后一张并更改选项。如果有很多文件夹,则变得更加繁琐。 - Beno
1
这仅适用于“Web应用程序”,而不是“网站”-在网站中没有此选项。 - Beno

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接