मैं एक परियोजना पर काम कर रहा हूं जो एक असेंबली उत्पन्न करता है। मैंने अभी देखा है कि एक अतिरिक्त असेंबली * .XmlSerializers.dll उत्पन्न किया जा रहा है। यह फ़ाइल ऑटो जनरेट क्यों है और इसका उपयोग किस लिए किया जाता है?MyAssembly.XmlSerializers.dll के लिए जेनरेट किया गया है?
उत्तर
.NET कार्यान्वयन में, XmlSerializer आपके वर्गों (प्रदर्शन कारणों से) को क्रमबद्ध/deserializing के लिए एक अस्थायी असेंबली उत्पन्न करता है। इसे या तो मक्खी पर उत्पन्न किया जा सकता है (लेकिन इसमें प्रत्येक निष्पादन पर समय लगता है), या संकलन के दौरान इसे पूर्वनिर्धारित किया जा सकता है और इस असेंबली में सहेजा जा सकता है जिसके बारे में आप पूछ रहे हैं।
आप परियोजना के लिए विकल्पों में इस व्यवहार को बदल सकते हैं (->उन्नत संकलित विकल्प - टैब संकलित>क्रमबद्धता विधानसभाओं, ऑटो या पर क्रमश: उत्पन्न करें)। प्रोजेक्ट फ़ाइल में संबंधित तत्व जेनरेट सेरियलाइजेशनएस्सेम्लीज़ है, उदाहरण के लिए, <GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
।
के साथ जेनरेट किया जाता है यदि यह प्रोजेक्ट सेटिंग ऑटो होने पर उत्पन्न होता है, तो इसका मतलब यह है कि इसकी आवश्यकता है? यदि आप X.XMLSerializers.dll को एप्लिकेशन के साथ तैनात नहीं करते हैं तो क्या होगा, क्या यह फ्लाई पर उत्पन्न होगा? – Rory
तो इन विधानसभाओं को प्री-लोड करने के बारे में कोई कैसे जाता है? – Carlo
@ रोरी, मुझे पता है कि यह सवाल पुराना है, लेकिन ऐसा लगता है कि यह मामला है। मेरी तीन परियोजनाओं को 'ऑटो' पर सेट किया गया था, लेकिन केवल एक ने सीरियलाइजेशन डीएलएल बनाया था। – ps2goat
मुझे लगता है कि यह प्रदर्शन कारणों से एक्सएमएल धारावाहिकों के जेआईटी (बस समय में) संकलन है।
आपको RegexOptions.Compiled विकल्प का उपयोग कर RegEx उदाहरणों के साथ एक ही चीज़ मिलती है।
मैं कोई .NET CLR विशेषज्ञ नहीं हूं, सटीक तकनीकी विवरण की कमी के लिए खेद है।
*.XmlSerializers.dll
Sgen.exe [एक्सएमएल Serializer जेनरेटर उपकरण] का उपयोग उत्पन्न कर रहे हैं
देखें Sgen.exe on MSDN
आमतौर Sgen.exe
परियोजनाओं की घटनाओं बिल्ड पोस्ट में प्रयोग किया जाता है। देखें कि क्या आपके प्रोजेक्ट में पोस्ट बिल्ड इवेंट है जो *.XmlSerializers.dll
एफवाईआई। सटीक चरण स्वत: जनरेट होने से XmlSerializers.dll को रोकने के लिए कर रहे हैं:
- वी.एस. में, अपनी परियोजना फ़ाइल पर राइट-क्लिक करें और "गुण"
- "बिल्ड" टैब पर क्लिक
- बदलें "ऑटो" से लटकती "क्रमबद्धता विधानसभा उत्पन्न करें" के लिए "बंद"
- के पुनर्निर्माण और यह चला जाएगा
हाँ लेकिन सवाल था ** क्यों ** यह उत्पन्न होता है! – Hemant
मुझे पता है कि यह एक पुरानी प्रतिक्रिया है, लेकिन एक विनफॉर्म ऐप लक्ष्यीकरण पर वीएस2015 अपडेट 3 में .NET 2.0 x86 को Win10 Ent 64bit सिस्टम पर संकलित करते समय तब भी जब "सीरियलाइजेशन असेंबली जेनरेट करें" ड्रॉप डाउन "ऑफ" पर तब * .XmlSerializers .dll अभी भी उत्पन्न हुआ है। मेरा ऐप एएसएमएक्स वेब सेवा का संदर्भ देता है। शायद वीएस2015 अपडेट 3 में एक बग? – Peter
परियोजना केवल वेब अनुप्रयोगों के लिए project.XMLSerialisers.dll उत्पन्न करता है। अन्य अनुप्रयोगों के लिए आपको अलग से sgen चलाने के लिए है।
मेरा WinForms ऐप MyProject.XMLSerializers.dll उत्पन्न करता है जब इसे चालू या ऑटो –
- 1. ओबीजे फ़ोल्डर के लिए जेनरेट किया गया है?
- 2. गतिशील रूप से जेनरेट किया गया GUI
- 3. गतिशील रूप से जेनरेट किया गया फेविकॉन
- 4. JAXB जेनरेट किया गया पैकेज-info.java
- 5. सीएमके जेनरेट किया गया एक्सकोड प्रोजेक्ट एक्सकोड
- 6. यह सुनिश्चित करने के लिए कि एक जेनरेट किया गया guid वैश्विक रूप से अद्वितीय है?
- 7. रेजर में आउटपुट एकल उद्धरण जेनरेट किया गया जावास्क्रिप्ट स्ट्रिंग
- 8. कमांड 'जेनरेट' समझा नहीं गया है या लागू नहीं है
- 9. जावा 6 enums के लिए मूल्य() लागू किया गया है?
- 10. यह जांचने के लिए कि JCheckBox चेक किया गया है?
- 11. के लिए इस्तेमाल किया गया .link_to_grails_plugins फ़ोल्डर क्या है?
- 12. Int32 के लिए GetHashCode() कैसे कार्यान्वित किया गया है?
- 13. पाइथन "साथ" कथन के लिए डिज़ाइन किया गया है?
- 14. समानांतर कोड के लिए स्केलेबिलिटी कैसे परिभाषित किया गया है?
- 15. URL.openconnection() के दौरान क्या किया गया है?
- 16. कहां घोषित किया गया है?
- 17. Enum.values () परिभाषित किया गया है?
- 18. सीरियलाइजेशन असेंबली जेनरेट करने का लाभ क्या है?
- 19. निम्नलिखित खंडों को परिभाषित किया गया है लेकिन लेआउट पेज के लिए प्रस्तुत नहीं किया गया है "~/Views/Shared/_Layout.cshtml"
- 20. गिट में क्या चेक किया गया है यह देखने के लिए, लेकिन dcommit के माध्यम से svn के लिए प्रतिबद्ध नहीं किया गया है?
- 21. ऑन कॉन्फ़िगरेशन चेंज को एक बार सेट नहीं किया गया है, अनुरोध किया गया है कॉन्फ़िगरेशन
- 22. अनुरोध किया गया है लंबितइन्टेंट में कोड हमेशा समर्थित किया गया है?
- 23. क्या मूल करने के लिए मैप किया गया है, कैसे पता लगाने के लिए
- 24. क्या मनमाना बाइनरी प्रारूपों के लिए स्कीमा भाषा बनाने के लिए कोई प्रयास किया गया है?
- 25. क्या ट्रिडियन हॉटफिक्सेस लागू किया गया है?
- 26. प्लॉट परिभाषित नहीं किया गया है
- 27. LINQ आलसी मूल्यांकन किया गया है?
- 28. एचटीपीशन कैसे लागू किया गया है?
- 29. getActivity() जहां इसे परिभाषित किया गया है?
- 30. क्या मैं = 0, ++ परिभाषित किया गया है?
मुझे लगता है कि आप पहले ही जानते हैं कि यह क्यों उत्पन्न होता है। यदि नहीं, तो यह उत्पन्न होता है क्योंकि आपकी परियोजना एक प्रकार की webservice का खुलासा कर रही है। यह हमेशा संकलन समय के दौरान या रनटाइम के दौरान उत्पन्न होता है। रनटाइम में यह टेम्पल फ़ोल्डर में यादृच्छिक नाम – AaA