के समान प्रोजेक्ट में मौजूद T4 टेम्पलेट में प्रकारों का उपयोग करना, मैं अपने प्रोजेक्ट में कुछ संग्रहीत प्रक्रिया सहायक कोड जोड़ने के लिए अपने पहले टी 4 कोड जनरेशन टूल पर काम कर रहा हूं। मैं कस्टम प्रकार बना लिया है (StoredProcedure
और StoredProcedureParameter
जैसे मेरी कोड पीढ़ी के साथ मदद करने के लिए और मेरे कोड में विधानसभा और नाम स्थान संदर्भ में शामिल हैं:टेम्पलेट
<#@ template debug="false" hostspecific="false" language="VB" #>
<#@ output extension=".generated.vb" #>
<#@ assembly name="$(TargetPath)" #>
<#@ import namespace="StoredProcCodeGenerator" #>
यह मुझे मेरी टी -4 टेम्पलेट कोड में अपने कस्टम प्रकार का उपयोग करने की अनुमति देता है। हालांकि, क्योंकि मेरे कस्टम प्रकार टी 4 टेम्पलेट कोड के समान प्रोजेक्ट में मौजूद हैं, इसलिए जब मैं विजुअल स्टूडियो को पुनरारंभ किए बिना टेम्पलेट कोड चलाता हूं तो मैं अपने प्रोजेक्ट को पुन: संकलित नहीं कर सकता। यह बहुत मजेदार नहीं है।
मैंने पढ़ा great article जो T4 टूलबॉक्स का उपयोग करके इस सटीक समस्या को संबोधित करता है, लेकिन यह काम नहीं कर रहा है। या तो मैं VolatileAssembly
निर्देश गलत या T4 टूलबॉक्स si लागू कर रहा हूं mply स्थापित नहीं किया गया था। मुझे यकीन नहीं है कि टूलबॉक्स सही ढंग से स्थापित हो गया है (मैं विन XP पर वीएस 2010 का उपयोग कर रहा हूं)।
कुछ तरीकों से क्या मैं इस समस्या को ठीक करने में सक्षम हो सकता हूं?
मुझे समझ में नहीं आता है। वीएस -2010 में मैं हर समय टी 4 टेम्पलेट का उपयोग करता हूं, जिसमें टेम्पलेट के समान प्रोजेक्ट में उपयोग किए जाने वाले प्रकारों का उपयोग करना शामिल है, और जब भी मैं सहेजता हूं तो यह बहुत अच्छा काम करता है और टेम्पलेट को फिर से चलाता है - जैसा कि मैं अपेक्षा करता हूं। –
@ किर्क मुझे एहसास नहीं हुआ कि मुझे '<# @ असेंबली नाम =" $ (लक्ष्यपैथ) "#>' को हटाने के पहले '<# @ VolatileAssembly ...' को हटा देना था। मैंने इसे समझाने के लिए एक जवाब जोड़ा है। –
कोई व्यक्ति शुरुआत के निकट tempate के बजाय टेम्पलेट कहने के लिए शीर्षक संपादित कर सकता है? – Maslow