2012-02-27 11 views
6

मैं fsharp powerpack नमूने में प्रदान की गई MiniCSVTypeProvider का उपयोग कर रहा हूं।रीलोडिंग प्रकार प्रदाता

दुर्भाग्यवश, ऐसा लगता है कि प्रदान किए गए मान फ़्लोट हैं, जबकि मेरा विभिन्न (अलग-अलग) स्वरूप हैं। इसलिए मैं MiniCsvType प्रदाता को हमेशा कॉलर को पार्सिंग कार्य छोड़कर स्ट्रिंग प्रदान करने के लिए पुनः लिखता हूं।

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

क्या किसी पूर्व प्रकार के प्रदाता को निरस्त/रीसेट करने का कोई अन्य तरीका है ताकि वीएस खाते में बदलाव ले सके?

उत्तर

1

थोड़ा देर हो चुकी है, लेकिन एक ही समस्या का सामना करना पड़ रहा है, मैंने इसे उपकरण -> विकल्प -> एफ # टूल्स -> प्रकार प्रदाताओं से प्रकार प्रदाता को निष्क्रिय और पुनः सक्रिय करके हल किया। (मैं वीएस2013 का उपयोग कर रहा हूं)

+1

यह विकल्प वीएस2015 से हटाए जाने के लिए हैं। क्या यह कहीं और स्थित है? या क्या मुझे टाइप-प्रदाता लॉक जारी करने के लिए विजुअल स्टूडियो को पुनरारंभ करने की आवश्यकता है? – Yodiz

7

सामान्य रूप से, एक प्रकार प्रदाता को विकसित करते समय, आपको प्रदाता को अद्यतन करने के लिए एक प्रकार प्रदाता का उपभोग करने वाले वीएस का उदाहरण बंद करना होगा। एक सामान्य वर्कफ़्लो में दो वीएस उदाहरण होते हैं: वह जो प्रदाता प्रदाता के कोड पर काम कर रहा है, जो खुला रहता है, और दूसरा जो प्रदाता का संदर्भ/उपभोग/परीक्षण कर रहा है, जिसे आप हर बार बंद करने के लिए बंद करते हैं । उपभोक्ता वीएस अक्सर डिस्क पर डीएलएल को लॉक करता है, और असेंबली को अपनी प्रक्रिया में अनलोड/पुनः लोड नहीं कर सकता है, यही कारण है कि आपको वीएस प्रक्रिया को अपने प्रकार प्रदाता कार्यान्वयन पर फिर से चलाने की आवश्यकता है।

+0

क्या * यह * विजुअल स्टूडियो में होना अच्छा नहीं होगा? 'चरणबद्ध निष्पादन' की धारणा के साथ यह संभव होगा जहां आप जिस स्तर के खिलाफ प्रोग्राम को गहरा स्तर मानते हैं, उससे पहले भाग गया। गहरे स्तर का मिशन प्रकार, या परिवर्तनीय (उर्फ सिंगलटन प्रकार) को उनके अगले स्तर पर प्रदान करना है। – nicolas

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