मैं कोड लिख रहा हूं जिसका उपयोग WPF और Silverlight दोनों में किया जाता है। सी # में मैं सशर्त संकलन के लिए "#if SILVERLIGHT"
का उपयोग कर सकता हूं, और यह काम करता है।टी 4 का उपयोग कर डब्ल्यूपीएफ और सिल्वरलाइट के लिए एकीकृत एक्सएएमएल?
एक्सएएमएल में, हालांकि, मुझे पूरी तरह से अलग एक्सएएमएल फाइलों का उपयोग करना होगा, क्योंकि कुछ विशेषताएं केवल असंगत हैं। एक्सएएमएल फाइलें 99% जैसी हैं, और उन्हें सिंक में रखते हुए एक परेशानी है।
मैं उन्हें एक टी -4 टेम्पलेट में तब्दील करना चाहते हैं, तो मैं की तरह कर सकते हैं:
<SomeControl <#=ClipsToBounds()#> />
कहाँ ClipsToBounds()
WPF और Silverlight के लिए अलग अलग पाठ पैदा करता है। आवश्यकताएँ हैं:
- Intellisense जबकि निर्माण समय पर उत्पन्न XAML
- टेम्पलेट्स पर काम कर
- परियोजना आत्म निहित किया जाना चाहिए और विजुअल स्टूडियो का जायजा संस्करण पर काम: विभिन्न SDK और 3 पार्टी संपादकों को इंस्टॉल किए स्वीकार्य
- टेम्पलेट रन के परिणाम स्रोत नियंत्रण में नहीं होना चाहिए। -
मैंने पाया कि मैं MSBuild:Compile to TextTemplatingFileGenerator
से एक XAML फाइल पर custom tool
को बदल सकते हैं और मैं Intellisense खोना नहीं है। हालांकि, परिणामस्वरूप टेम्पलेट डिजाइन समय पर उत्पन्न होते हैं। फिर निर्माण समय पर उत्पन्न होने के लिए एक बड़ा दर्द लगता है।
क्या किसी के पास इस तरह के सेटअप के साथ सफल अनुभव है?
एक पोर्टेबल क्लास लाइब्रेरी का उपयोग नहीं कर रहा है? –
पोर्टेबल क्लास लाइब्रेरी साझा गैर-यूआई कोड की समस्या का समाधान करते हैं, यदि वे एमवीवीएम का उपयोग करते हैं तो दृश्यमान मॉडल के लिए वे एक अच्छा फिट होना चाहिए, न कि दृश्य। –