2010-02-11 13 views
43

विजुअल स्टूडियो 2008 में, यह निर्धारित करता है कि ऑर्डर एक समाधान फ़ोल्डर में कौन सा प्रोजेक्ट दिखाई देता है? यह वर्णमाला क्रम नहीं है, न ही यह आदेश बना रहा है।विजुअल स्टूडियो समाधान में प्रोजेक्ट ऑर्डर

मुझे ऑर्डर बदलने का कोई तरीका नहीं मिल रहा है जिसमें परियोजनाएं सूचीबद्ध की जा रही हैं। मैंने अपने .suo फ़ाइल को हटाने की कोशिश की है, साथ ही साथ .sln फ़ाइल में चीजों को स्थानांतरित करने का प्रयास किया है। न तो कोई प्रभाव पड़ा।

मैं अपनी परियोजनाओं को प्रदर्शित करने के क्रम में कैसे बदल सकता हूं?

+2

मुझे और भी खराब स्थिति है। समय-समय पर, वीएस 2008 ने मेरी परियोजनाओं को दोबारा आदेश देने का फैसला किया ... यह भयानक है, जब मैं "इसके आदेश" का उपयोग करता था, तो यह बदलने का फैसला करता है और 100 से अधिक परियोजनाओं के समाधान में, यह एक दुःस्वप्न कुछ भी ढूंढ रहा है! – anthares

उत्तर

8

एक फीडबैक अनुरोध पहले से ही Connect.Microsoft.com पर दिया गया है, इसलिए आपको स्थायी समाधान की प्रतीक्षा करनी होगी।

http://connect.microsoft.com/VisualStudio/feedback/details/468874/solution-explorer-project-sort-order (वेबैक मशीन लिंक के साथ प्रतिस्थापित मूल रूप हटा दिया गया था)

अस्थाई वाले कामकाज उपलब्ध नहीं बल्कि काफी अच्छा मुझे लगता है कर रहे हैं। उनमें से एक है:

प्रेस F2 एक परियोजना का नाम बदलने के लिए, तो नाम बदले बिना Enter दबाएँ। यह अस्थायी रूप से उस फ़ोल्डर के भीतर परियोजनाओं को टाइप करता है।

(प्रति http://social.msdn.microsoft.com/Forums/en-US/vssetup/thread/79d46a69-386e-4ad8-b9cb-b00d4252495b/?prof=required के रूप में)

या http://solutionsorter.codeplex.com/ का उपयोग स्थायी ठीक के लिए SLN को बदलने के लिए करता है, तो अपने समाधान फ़ोल्डरों नहीं लगाए गए हैं

(यह मेरा समाधान खाया) लेकिन इस करता है, तो आप काम नहीं करेगा समाधान बंद करें और खोलें।

आप Resharper का उपयोग करते हैं, तो आप शॉर्टकट CTRL दबा सकते हैं + एन + F12 को समाधान में फ़ाइलें और CTRL पता लगाना फ़ाइल में तरीकों पता लगाने के लिए।

+0

AFAIK यह VS2010 में तय है, मुझे उम्मीद है कि वीएस -2008 के लिए स्थायी समाधान नहीं होगा। – Benjol

+1

वीएस -2010 में ऐसा करने का कोई विचार, यह मेरे लिए स्पष्ट नहीं है ... –

+4

@ बेंजोल "निश्चित" परिभाषित करता है? हमेशा वर्णानुक्रम में क्रमबद्ध? – Lucas

4

हैकी विकल्प: इन पंक्तियों के साथ अनुभाग को एक टेक्स्ट फ़ाइल में कॉपी करें।

Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "etc..." 
EndProject 

इस एफ # स्क्रिप्ट का प्रयोग करें यह वर्णानुक्रम (बदलते फ़ाइल पथ के रूप में) की आवश्यकता सॉर्ट करने के लिए:

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 

(आप केवल कुछ परियोजनाओं, बस प्रकार यह हाथ से मिल गया है तो)
7

किसी भी टेक्स्ट एडिटर में फ़ाइल। एसएलएन लें। आदेश भागों
" परियोजना (" {2150E333-8FDC-42A3-9474-1A3956D46DE8} ") =" आदि ... "
...
EndProject

आप चाहते हैं किसी भी क्रम में

। इसे सहेजें। यह सब कुछ है। अगली बार जब आप इस समाधान को खोलेंगे तो परियोजनाएं उस क्रम में होंगी।

+0

इसका वीएस -2010 में कोई प्रभाव नहीं पड़ता है (मूल प्रश्न VS2008 के बारे में था, लेकिन मैंने इसे व्यर्थ उम्मीदों में अभी कोशिश की है कि यह काम करेगा) –

10

दुर्भाग्यवश वीएस -2010 बल परियोजनाओं को क्रमबद्ध रूप से क्रमबद्ध करने के लिए प्रोजेक्ट करता है।

वांछित क्रम प्राप्त करने के लिए शायद संख्यात्मक उपसर्ग (01, 02, 03, आदि) जोड़कर परियोजनाओं का नाम बदलना एकमात्र कामकाज है, हालांकि आदर्श नहीं है।

2

इस समाधान के अनुसार: https://stackoverflow.com/a/21118705/835561

आप समाधान फ़ोल्डर का उपयोग कर सकते यह परियोजना निर्भरता को प्रभावित करने के बारे में चिंता किए बिना अपने छंटाई करने के लिए। यह सुनिश्चित नहीं है कि 2013 से पहले यह कितना अच्छा काम करता है, लेकिन मैं इस प्रश्न में 2013 की तलाश में आया और सोचा कि इससे मेरी स्थिति में दूसरों की मदद हो सकती है।

संबंधित मुद्दे