在Visual Studio网站中,项目设置究竟存储在哪里?

19
在VS2010中使用网站(而不是Web应用程序),因此没有csproj文件。在Solution Explorer中右键单击“Site”节点并选择“属性页面”会弹出一个对话框,其中包括引用、生成、辅助功能、启动选项、MSBuild选项和Silverlight应用程序。您可以在这些页面中进行更改,关闭Visual Studio,关闭计算机,回家,与家人度过高质量的时间,睡个好觉,第二天回到工作岗位,打开电脑,冲杯咖啡,聊聊上个晚上《边缘》节目的情况,登录,启动Visual Studio,打开那个网站,然后PRESTO!这些设置大多数仍然存在。
尽管在该对话框本身的神圣像素之外,没有任何痕迹表明这些设置存在。肯定不会存在于网站文件夹中的任何文件中。对于解决方案文件,也没有解决方案文件。稍微绝望地搜索了注册表,却什么都没有找到。这些设置被保存在哪里?它们存储在云中吗?写入NTFS文件系统字节间的空隙中?也许通过TCP端口666发送到地狱的遥远角落,被无情的恶魔用死黑眼睛刮成永恒地痛苦的折磨肉体上。
非常感谢您提供任何建议。

6
就风格而言,这是我在stackoverflow上看过的最好的问题之一。 - Dan K
4个回答

7

有SLN文件,只是它的位置不在你期望的地方。对于网站项目,它们会被创建在你的默认项目位置,例如:C:\Users\用户名\Documents\Visual Studio 2010\Projects\YourWebSite\YourWebSite.sln(或者在工具/选项/项目和解决方案中设置的默认项目位置)。

这些网站项目还真不错,是个很棒的想法。


8
我改变了网站属性页面中的“启动操作”,经过数小时的使用进程监视器(但并未成功)以及最终对整个硬盘进行全文搜索,我在 %LOCALAPPDATA%\Microsoft\WebsiteCache\Websites.xml 中找到了该设置。我怀疑该窗口中的设置会持久存在于各种不同的位置。 - Vimes
他们的想法真是太棒了。...想法本身不错,但执行起来却令人毛骨悚然 :) - newbyca
2
这些年来,我一直认为我的“个人”项目设置都在“.suo”文件中,最终发现其中一半在%LOCALAPPDATA%/.../Websites.xml文件中!我简直不敢相信他们没有使用.suo文件(而且.suo是一个不可编辑的二进制文件)。 - foxontherock

2
我刚刚遇到了这个问题,发现这里给出的答案都与引用有关的不正确。这些引用是使用.dll.refresh文件存储的 - 我们可以将其添加到源代码控制中。
参考问题在这里:什么是ASP.Net中的dll.refresh文件?

但问题是关于属性页面中所有设置的,而不仅仅是引用。 - Zack

0

它们存储在解决方案文件中。

引用存储在Web.configBin\文件夹中。


0

设置将保存到解决方案和项目文件(.sln.csproj)中。如果您在记事本中打开文件,您会看到各种设置以XML格式列出。某些设置可能存储在用户设置文件(.csproj.user)中,例如某些调试选项等。

编辑

在您的情况下,由于这是一个网站项目,因此请忽略我的答案中涉及项目文件的部分。不过我还是会保留它,以防将来对其他人有用。


1
不,没有项目文件。这是一个网站项目。 - SLaks

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