इस उत्तर principles used to package libraries targeting the .NET Framework पर बनाता है। निम्नलिखित को बेहतर ढंग से समझने के लिए पहले लिंक किए गए उत्तर को पढ़ें।
सबसे पहले आपको परियोजना निर्माण सेटिंग्स में "लाइब्रेरी लेआउट जेनरेट करें" चेकबॉक्स को देखना होगा। इसके बिना, आपके पुस्तकालय द्वारा निर्यात किए गए XAML उपयोगकर्ता नियंत्रणों का उपयोग करना संभव नहीं होगा। सभी बिल्ड कॉन्फ़िगरेशन और आर्किटेक्चर के लिए इस सेटिंग को लागू करना सुनिश्चित करें।
बुनियादी 3 संपत्ति के अलावा
(देखें का जवाब ऊपर लिंक), आप भी अपने निर्माण उत्पादन निर्देशिका से निम्न अतिरिक्त संपत्ति पैकेज की आवश्यकता होगी:
- MyUwpLibrary.pri
- MyUwpLibrary उपनिर्देशिका
इन अतिरिक्त संसाधनों को आपकी असेंबली द्वारा निर्यात किए गए एक्सएएमएल उपयोगकर्ता नियंत्रणों का उपयोग करने की आवश्यकता है। इन संपत्तियों को हमेशा शामिल करें, भले ही आपने अभी तक अपनी लाइब्रेरी से कोई एक्सएएमएल निर्यात नहीं किया है - आप इसे एक दिन कर सकते हैं और बाद में याद रखना मुश्किल होगा!
UWP पुस्तकालय प्रकाशित करने के लिए, आप निम्न संरचना के साथ एक NuGet पैकेज बनाने के लिए की जरूरत है:
\---lib
\---uap10.0
| MyUwpLibrary.dll
| MyUwpLibrary.pdb
| MyUwpLibrary.pri
| MyUwpLibrary.xml
|
\---MyUwpLibrary
HelloWorld.xaml
MyUwpLibrary.xr.xml
आप .नेट फ्रेमवर्क पुस्तकालय प्रकाशन के साथ परिचित हैं, तो यह काफी परिचित और सीधा दिखना चाहिए। आप अपने nuspec फ़ाइल के लिए निम्न टेम्पलेट का उपयोग कर सकते हैं:
<?xml version="1.0"?>
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata minClientVersion="3.2">
<id>Example.MyUwpLibrary</id>
<version>1.0.0</version>
<authors>Firstname Lastname</authors>
<description>Example of a UWP library that exports a user control.</description>
<dependencies>
<dependency id="Newtonsoft.Json" version="8.0.1" />
</dependencies>
</metadata>
<files>
<!-- The double wildcard will also grab all the resource files and the resource subdirectory. -->
<file src="..\bin\Release\MyUwpLibrary**" target="lib\uap10.0" />
</files>
</package>
यह वास्तव में है! NuGet पैकेज बनाने से पहले रिलीज कॉन्फ़िगरेशन का उपयोग करके अपना समाधान बनाना याद रखें। अधिक जानकारी के लिए, उपरोक्त लिंक किए गए .NET Framework लाइब्रेरी को पैकेजिंग के बारे में उत्तर देखें।
एक नमूना पुस्तकालय और प्रासंगिक पैकेजिंग फ़ाइलें available on GitHub हैं। इस उत्तर से संबंधित समाधान SimpleUwpLibrary है।
ईमानदारी से इसके लिए धन्यवाद! मैं अपनी खुद की यूडब्लूपी लाइब्रेरी बनाने में परेशानी में भाग रहा था और मुझे लगता है कि इसने मेरे लिए मुद्दों को हल किया है। –
इसके अलावा: एक अलग टीएफएम जिसका उपयोग किया जा सकता है ('uap10.0' के बजाय)' netcore50' है। –
MyUwpLibrary उपनिर्देशिका केवल तभी बनाई जाती है जब जेनरेट लाइब्रेरीलाइट ध्वज इसी निर्माण कॉन्फ़िगरेशन के लिए सत्य पर सेट हो। – halllo