2009-09-25 14 views
12

क्या मेरे पास कुछ अजीब सेटिंग है जो ऐसा कर रही है? मैं केवल एक संदेश बॉक्स के पाठ को बदलना चाहता हूं (और कोई अन्य असेंबली उस पर निर्भर नहीं है) फिर भी वीएस मेरी सभी परियोजनाओं का पुनर्निर्माण करता है और यह हमेशा के लिए लेता है। कोई विचार?हर बार जब मैं "प्ले" हिट करता हूं तो वीएस को मेरी सभी परियोजनाओं का पुनर्निर्माण क्यों करना पड़ता है?

+0

मुझे अपने WPF एप्लिकेशन के साथ एक ही समस्या है। नीचे जेरेडपार पर आपकी टिप्पणी के आधार पर, शायद यह डब्ल्यूपीएफ से संबंधित है। –

उत्तर

9

आप का निर्माण मेनू के माध्यम से अपने सामान्य निर्माण से परियोजनाओं को बाहर कर सकते ..

→ बिल्ड कॉन्फ़िगरेशन मैनेजर → सही का निशान हटाएँ परियोजनाओं है कि आप हमेशा के निर्माण के लिए नहीं करना चाहती।

यह केवल उन परियोजनाओं के निर्माण के द्वारा बिल्ड समय को बढ़ा सकता है जो हर समय पूरी तरह से निर्माण की आवश्यकता होती है।

नोट हालांकि आपको उन परियोजनाओं को बनाना होगा जिन्हें आपने स्वतंत्र रूप से अचयनित किया है (दायाँ क्लिक-> प्रोजेक्ट आदि पर बनाएं) यदि उन्हें पुनर्निर्मित करने की आवश्यकता है।

आप वैकल्पिक बिल्ड कॉन्फ़िगरेशन भी सेट अप कर सकते हैं ताकि आप मिश्रण और मिलान कर सकें जो कि कब बनाएगा।

+0

इससे सभी सुझावों में सबसे अंतर आया है, क्योंकि मुझे अधिकांश परियोजनाओं में कोई बदलाव करने की आवश्यकता नहीं है। मैं अभी भी इसे पसंद करूंगा अगर वीएस सिर्फ यह पता लगा सके कि परियोजना को अद्यतन नहीं किया गया था और इसलिए इसे नहीं बनाया गया था। – skb

+7

-1 क्योंकि इससे वह समस्या हल नहीं कर पाती है। किसी कारण से वीएस यह स्वीकार नहीं कर रहा है कि बिल्ड निर्भरता अद्यतित है, और पुनर्निर्माण को मजबूर कर रही है। मुझे अभी भी इस समस्या है (कभी भी वीएस 2012 में जाने के बाद), और किसी भी सलाह की सराहना करेंगे! –

+0

@ डेविड कुकिया डेविड, कृपया मेरे उत्तर पर एक नज़र डालें। यह बताता है कि वास्तव में यह निर्धारित करने के लिए कि क्यों विजुअल स्टूडियो सोचता है कि इसे प्रत्येक प्रोजेक्ट को पुनर्निर्माण करने की आवश्यकता है। –

0

"प्ले" बटन संभवतः ऐसा नहीं है जो आपको लगता है, या आपके पास वृद्धिशील लिंकिंग है और आपकी प्रोजेक्ट सेटिंग्स में बंद है।

13

कॉन्फ़िगरेशन का उपयोग किए बिना इस पर कुछ सीमित नियंत्रण है यदि आप केवल स्टार्टअप परियोजनाओं और रन पर निर्भरता बनाने के विकल्प को चेक करते हैं।

उपकरण → विकल्प → परियोजनाओं और समाधान → बिल्ड और भागो → केवल भागो

+0

+1 - अच्छी कॉल। –

1

प्ले बटन पर स्टार्टअप परियोजनाओं और निर्भरता का निर्माण शुरू डिबगिंग की सुविधा है।

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

यदि आपकी परियोजना वास्तव में निर्माण कर रही है तो कुछ और समस्या हो सकती है। आप हमें भाषा, परियोजना प्रकार, आदि जैसे कुछ और जानकारी दे सकते हैं ...

+1

यह एक बहुत ही सरल परिदृश्य है। मेरे पास स्टार्टअप प्रोजेक्ट के रूप में एक डब्ल्यूपीएफ एप्लीकेशन (एक्सएएमएल/सी #) है, और उसके बाद मेरे पास 11 क्लास लाइब्रेरी प्रोजेक्ट्स (सी #) है जो डब्ल्यूपीएफ अन्य क्लास लाइब्रेरी प्रोजेक्ट्स के माध्यम से सीधे या अप्रत्यक्ष रूप से संदर्भित करता है। वे सभी बिल्डिंग हैं, हर बार जब मैं बिल्ड या प्ले हिट करता हूं, भले ही मैंने उनमें कोई बदलाव किया हो। क्या यह सामान्य है? क्या कुछ भी नहीं बदला है, तो इसे बनाने के लिए कोई रास्ता नहीं है? – skb

+1

मुझे अपने डब्ल्यूपीएफ एप्लिकेशन के साथ एक ही समस्या है। शायद यह डब्ल्यूपीएफ संबंधित है। –

1

यह भी संभव है की स्थापना 'भागो पर, जब परियोजनाओं पुराने हो चुके हैं' के बजायकरने के लिए 'कभी बिल्ड' बदलने के लिए 'पूछना'। (अपने मेनू 'उपकरण में -> विकल्प -> परियोजनाओं & समाधान -> बिल्ड & भागो) इस तरह, आप के लिए F6 हर बार जब आप एक परिवर्तन करना प्रेस करने के बाहर के तारीख परियोजनाओं के निर्माण के लिए आवश्यकता होगी , लेकिन कम से कम यह आपको recompile के बिना F5 के साथ डीबग करने की अनुमति देगा।

मुझे कहना है कि यह आदर्श नहीं है, लेकिन यह कुछ है। कैसीनी का उपयोग करते समय मेरे पास एक मुद्दा था: हर बार जब मैं एफ 5 दबाता हूं तो एप-पूल रीसील नहीं होता क्योंकि कैसीनी चलती रहती है। जब आप समस्याओं को घेरते हैं तो आपको आईसीओन्ट्रे से कैसीनी को मैन्युअल रूप से रोकना होगा, लेकिन यह पूरी साइट के पुनर्निर्माण के विपरीत एक प्रमुख समय-बचतकर्ता है।

23

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

  1. टूल → विकल्प → परियोजनाओं और समाधान → बिल्ड और भागो।
  2. "एमएसबिल्ड परियोजना निर्माण आउटपुट वर्बोसिटी" सेटिंग के लिए: "डायग्नोस्टिक" का चयन करें।
  3. बिल्ड करें।

आप का ब्यौरा वास्तव में क्या निर्माण कर रहा है उत्पादन विंडो में उत्पादन का एक विशाल राशि मिल जाएगा। प्रत्येक प्रोजेक्ट बनाने से पहले यह प्रिंट करेगा कि ऐसा क्यों लगता है कि यह पुराना है। इस तरह के उत्पादन का एक उदाहरण है:

Project 'Foo' is not up to date. Input file 'c:\Bar.cs' is modified after output file 

ये "तारीख तक नहीं" संदेश आप अनावश्यक बनाता है जिसे आप ठीक कर सकते हैं का असली कारण इंगित करना चाहिए।

+0

दिलचस्प! सहायक टिप के लिए धन्यवाद। यह नहीं कह सकता कि मैंने यह समस्या हाल ही में वीएस 2015 में देखी है, लेकिन अगर मैं इसे फिर से देखूं तो मैं यहां अपने "डायग्नोस्टिक" आउटपुट के साथ अपना अनुभव अपडेट करूंगा। –

+3

धन्यवाद दस लाख! मेरे लिए "असली कारण" लगभग सभी परियोजनाओं में एक अतिरिक्त कॉन्फ़िगरेशन फ़ाइल थी, जहां "आउटपुट निर्देशिका में प्रतिलिपि" को "नया अगर कॉपी करें" के बजाय "हमेशा कॉपी करें" पर सेट किया गया था। –

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

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