在Visual Studio 2008中,什麼決定項目在解決方案文件夾中的顯示順序?這不是按字母順序排列,也不是建立秩序。Visual Studio解決方案中的項目順序
我找不到任何方法來改變列出項目的順序。我嘗試刪除我的.suo文件,以及在.sln文件中移動內容。沒有任何影響。
如何更改項目的顯示順序?
在Visual Studio 2008中,什麼決定項目在解決方案文件夾中的顯示順序?這不是按字母順序排列,也不是建立秩序。Visual Studio解決方案中的項目順序
我找不到任何方法來改變列出項目的順序。我嘗試刪除我的.suo文件,以及在.sln文件中移動內容。沒有任何影響。
如何更改項目的顯示順序?
在Connect.Microsoft.com上有一個反饋請求,因此您必須等待永久解決方案。
http://connect.microsoft.com/VisualStudio/feedback/details/468874/solution-explorer-project-sort-order(具有回程機鏈接替換爲原始輾轉)
臨時解決辦法也有,但不夠好,我覺得。其中之一是:
按F2重命名一個項目,然後按Enter鍵不更改名稱。這暫時對該文件夾中的項目進行排序。
或者使用http://solutionsorter.codeplex.com/改變SLN永久修復如果您的解決方案的文件夾沒有嵌套(它吃了我的解決方案)
但是這不會,如果你的工作關閉並打開解決方案。
如果您使用ReSharper的,您可以按 捷徑CTRL +ñ到找出解決方案 文件和CTRL + F12 到 找出文件的方法。
Hacky alternative:將這些行的部分複製到文本文件中。
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "etc..."
EndProject
使用此F#腳本對它進行排序按字母順序(改變,因爲所需的文件路徑):
open System.IO
let readlines p = File.ReadAllLines(p)
let writelines p lines = File.WriteAllLines(p, lines)
let startpos = @"Project(""{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}"") = """.Length
let getProj (s:string) = s.Substring(startpos, s.IndexOf('"', startpos) - startpos)
let path = @"C:\Temp\sln.txt"
path |> readlines
|> Array.filter (fun s -> s.StartsWith("Project"))
|> Array.map (fun s -> (getProj(s), s))
|> Array.sortBy fst
|> Array.map snd
|> Array.collect (fun s -> [|s;"EndProject"|])
|> writelines path
(如果你只得到了幾個項目,只是排序它通過手)
在任何文本編輯器中取出.sln文件。 令部分
「 項目(」{2150E333-8FDC-42A3-9474-1A3956D46DE8}「)= 」等等......「
...
EndProject
。 保存。 就是這樣。 下次您打開此解決方案時,項目將按該順序進行。
這對VS2010沒有任何影響(原來的問題是關於VS2008,但我只是試圖這個徒勞無功的希望,它會工作) – 2014-02-10 17:36:32
不幸的是VS2010迫使項目按字母順序排序。
也許重命名項目通過添加數字前綴(01,02,03等)來實現所需的順序是唯一的解決方法,但也不是理想的。
每此解決方案:https://stackoverflow.com/a/21118705/835561
您可以使用解決方案文件夾做你的排序,而不必擔心它影響到項目的依賴。不知道2013年之前這項工作有多好,但我在2013年遇到了這個問題,並認爲這可能會幫助其他人解決我的問題。
我有更糟糕的情況。有時候,VS 2008決定重新訂購我的項目......這很糟糕,就在我習慣於「訂單」時,它決定改變它,並且通過一個超過100個項目的解決方案,這是一個噩夢發現! – anthares 2010-02-11 13:47:45