2013-06-13 10 views
6

मेरे नई परियोजना WPF MVVM और WCF पर मेरी पहली नज़र है और मुझे यह पसंद लेकिन ऐसा लगता है जैसे मैं, फ़ाइलों का एक बहुत बनाने रहा हूँ हमेशा एक ही बुनियादी सेटअप और संरचना में।किसी प्रोजेक्ट में एकाधिक फ़ाइलों को जोड़ने के लिए टेम्पलेट को कैसे परिभाषित किया जाए?

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

तो डेवलपर बस में जाने के लिए और कोड कटौती अपने डेटा प्राप्त करने के लिए कर सकते हैं।

मैं इस देखा था, जो सही विचार के प्रकार है:

http://www.codeproject.com/Articles/16515/Creating-a-Custom-Tool-to-Generate-Multiple-Files

एक सहयोगी ने यह भी सुझाव दिया एक बैच फ़ाइल की जांच के लायक हो सकता है। सभी मदद के लिए खुला, आपकी मदद के लिए धन्यवाद।

अद्यतन //

यह जगह ले जाएगा के बाद परियोजना बनाया गया था। इसलिए फ़ोल्डर और प्रोजेक्ट पहले से ही मौजूद हैं लेकिन आप अंत तक सेवा कॉल और प्रेजेंटेशन के लिए आवश्यक फाइलें जोड़ना चाहते हैं।

+0

मैं क्योंकि मैं एक ही बात की जरूरत कुछ और अधिक शोध किया था। मैं एक बहुत ही सरल समाधान के साथ आया, कृपया मेरे अपडेट किए गए उत्तर पर एक नज़र डालें और मुझे बताएं कि यह आपके लिए काम करता है या नहीं। – Marc

उत्तर

6

आप एकल फ़ाइल जोड़ने के लिए, लेकिन यह भी करने के लिए दृश्य स्टूडियो के आइटम खाका न केवल उपयोग कर सकते हैं अपनी परियोजना फ़ोल्डर संरचना में एक से अधिक आइटम जोड़ने और उन्हें सुलझाने के लिए:

आप वी.एस. साथ एक आइटम टेम्पलेट बनाते हैं, तो के माध्यम से फ़ाइल -> निर्यात टेम्पलेट, आपको एक ज़िप फ़ोल्डर मिलता है। आप इसे अनजिप कर सकते हैं और कई फाइलें जोड़ सकते हैं, उदाहरण के लिए जब तक ऐसा लगता है: template folder

फिर आप 'MyTemplate' नाम की फ़ाइल को संशोधित कर सकते हैं। ऊपर के उदाहरण के लिए अनुसार फ़ाइल इस तरह दिखता है:

<VSTemplate Version="3.0.0" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" Type="Item"> 
    <TemplateData> 
    <DefaultName>Enter Module Name here</DefaultName> 
    <Name>INCA Module</Name> 
    <Description>Creates all files for a module - Add this item at project root level only!</Description> 
    <ProjectType>CSharp</ProjectType> 
    <SortOrder>10</SortOrder> 
    <Icon>__TemplateIcon.ico</Icon> 
    </TemplateData> 
    <TemplateContent> 
    <References /> 
    <ProjectItem SubType="Code" TargetFileName="Models/$fileinputname$.cs" ReplaceParameters="true">ElementModel.cs</ProjectItem> 
    <ProjectItem SubType="Code" TargetFileName="ViewModels$fileinputname$ViewModel.cs" ReplaceParameters="true">ElementViewModel.cs</ProjectItem> 
    <ProjectItem SubType="Designer" TargetFileName="$fileinputname$View.xaml" ReplaceParameters="true">View.xaml</ProjectItem> 
    <ProjectItem SubType="Code" TargetFileName="$fileinputname$View.xaml.cs" ReplaceParameters="true">View.xaml.cs</ProjectItem> 
    <ProjectItem SubType="Designer" TargetFileName="Metadata/$fileinputname$Metadata.xaml" ReplaceParameters="true">Metadata.xaml</ProjectItem> 
    <ProjectItem SubType="Code" TargetFileName="Metadata/$fileinputname$Metadata.xaml.cs" ReplaceParameters="true">Metadata.xaml.cs</ProjectItem> 
    </TemplateContent> 
</VSTemplate> 

मुझे लगता है, यहाँ क्या होता है काफी आत्म व्याख्यात्मक है।

यह टेम्पलेट पैरामीटर का उपयोग करने के लिए बहुत उपयोगी है:

MSDN on Template Parameters

तो बस पूरी बात फिर से ज़िप और फ़ोल्डर उपयोगकर्ता/दृश्य स्टूडियो xy/खाके में रखें। नोट, कि टेम्पलेट्स को MyExportedTemplates नामक फ़ोल्डर में निर्यात किया जाता है।

+0

यह प्रोजेक्ट बनने के बाद होगा। इसलिए फ़ोल्डर और प्रोजेक्ट पहले से ही मौजूद हैं लेकिन आप अंत तक सेवा कॉल और प्रेजेंटेशन के लिए आवश्यक फाइलें जोड़ना चाहते हैं। मुझे लगता है कि परियोजना (समाधान) निर्माण पर एक टेम्पलेट का उपयोग किया जाता है, है ना? – GP24

+0

आइटम टेम्पलेट (+ मैक्रो) किसी मौजूदा प्रोजेक्ट में फ़ाइलों को जोड़ना है, प्रोजेक्ट टेम्पलेट का उपयोग समाधान में नई परियोजनाओं को जोड़ने के लिए किया जाता है। – Marc

+0

यह बहुत ही आशाजनक लग रहा है, धन्यवाद! मैं अभी swamped हूँ लेकिन जल्द ही जांच करेगा। – GP24

0

मुझे याद है VS2010, टेम्पलेट के लिए अपनी परियोजना निर्यात कर सकते हैं ताकि आप टेम्पलेट के लिए परियोजना और निर्यात में अपने फ़ोल्डर या डेटा को संपुटित कर सकते हैं।

अगर आप इसे समाप्त कर लें, तो आप टेम्पलेट से अपनी कस्टम प्रोजेक्ट बना सकते हैं।

+0

यह प्रोजेक्ट बनने के बाद होगा। इसलिए फ़ोल्डर और प्रोजेक्ट पहले से ही मौजूद हैं लेकिन आप अंत तक सेवा कॉल और प्रेजेंटेशन के लिए आवश्यक फाइलें जोड़ना चाहते हैं। मुझे लगता है कि परियोजना (समाधान) निर्माण पर एक टेम्पलेट का उपयोग किया जाता है, है ना? – GP24

+0

@ जीपी 24, टेम्पलेट में आपकी कोड फाइलें, बेस लिरीरी संदर्भ आदि भी हो सकते हैं।आप व्यापार तर्क विकसित करना जारी रखने के लिए GetStarting प्रोजेक्ट को समाहित करने के लिए टेम्पलेट का उपयोग कर सकते हैं। – muzizongheng

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

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