编辑sln,proj,suo文件的最佳实践?

时间:2010-10-06 22:10:12

标签: .net visual-studio

在.NET中,每个解决方案/项目都有SUO,SLN,Proj文件。虽然我知道这些文件是什么,但手动编辑是否明智?他们甚至需要编辑吗?如果是这样,最好的方法是什么?

由于

7 个答案:

答案 0 :(得分:8)

您可以编辑许多可用文件。甚至在文档http://msdn.microsoft.com/en-us/library/ms171487(v=VS.90).aspx

中也有说明

解决方案文件不是XML格式,您可以在此处找到有关.SLN文件内容的信息: https://msdn.microsoft.com/en-us/library/bb165951(v=vs.140).aspx

项目文件是MSBuild脚本,因此经常对它们进行编辑(使用工具或手动编辑),以包含修改构建配置以满足您需求的项目。以下是MSBuild参考的链接,可能会有所帮助: http://msdn.microsoft.com/en-us/library/0k6kkbsd.aspx

.SUO文件是您的用户选项,不应直接编辑。我亲自使用了二进制编辑器并对其进行了编辑,以确定它是否可以成功完成,但您需要自己承担风险。

答案 1 :(得分:2)

可以手动编辑项目文件 - 有时您必须将项目添加到MSBuild支持的项目中,但Visual Studio不支持编辑(例如conditional elements)。我有一个Visual Studio加载项(我认为它可能是PowerCommands),它在解决方案资源管理器中的上下文菜单中添加了一个“编辑项目文件”选项。单击它从Visual Studio卸载项目,并打开prof文件作为XML,在Visual Studio的XML编辑器中进行编辑。

SLN文件不是XML,但它们实际上并不包含值得手工编辑的任何内容。

我认为SUO文件是二进制文件,不应编辑(它们只包含解决方案的用户特定值)。

答案 2 :(得分:0)

编辑项目文件时,可以在Visual Studio中右键单击项目,然后选择“卸载项目”。然后,您可以右键单击同一项目(现在显示为灰色)并选择编辑。完成后,再次右键单击并选择“重新加载”。

答案 3 :(得分:-1)

当然,我偶尔需要编辑它们。最近,我有一个项目文件,该文件启用了标志,将程序集注册为COM对象。删除所有COM可见类后,这会生成警告,因此我从项目文件中删除了该行。我用了记事本。

答案 4 :(得分:-1)

很少编辑它们。一个案例是修改ProjectTypeGuids,以便在Expression Blend中正确识别它。其他几次不得不对不再存在的引用进行一些手动更改。

总而言之,它几乎没有。 .prj文件是XML,因此任何好的XML编辑器就足够了。 VS中的属性页面显然也引用了.prj文件以及不想手动进行的更改。

答案 5 :(得分:-1)

我从来没有编辑SUO文件 - 甚至不确定它的作用。

关于.sln和.proj文件,它们肯定可以手工编辑,但对于任何复杂的事情,我发现让VS做更多努力更好,然后根据需要手动编辑文件。 / p>

在我的工作地点产生很大影响的一件事是采用PropertySheets来定义不同项目的一组通用设置。

答案 6 :(得分:-1)

我们编辑了许多csproj文件,因为它们使用了高级的msbuild功能。一个常见的事情是更改自定义任务的beforebuild和afterbuild目标 您可以通过右键单击项目并从上下文菜单中选择卸载项目,从visual studio执行此操作。之后,您可以再次右键单击编辑和重新加载项目。