كيفية إضافة تبعية إلى ملف عشوائي إلى قالب T4؟

StackOverflow https://stackoverflow.com/questions/280748

  •  07-07-2019
  •  | 
  •  

سؤال

لدي قالب T4 يقوم بإنشاء فئات من ملف xml.

كيف يمكنني إضافة تبعية بين ملف xml وملف القالب بحيث يتم إعادة تشغيل القالب تلقائيًا عند تعديل ملف xml دون اختيار "تشغيل أداة مخصصة" من قائمة السياق؟

هل كانت مفيدة؟

المحلول

وأنا لا أعتقد T4 يدعم التحول قالب آلي يعتمد على التبعية الخارجية. وأنا أتفق مع مارك - إذا كان لديك ملف خارجي واحد فقط، يمكنك إنشاء مخصص "أداة مخصصة" لملف XML الخاصة بك أو ببساطة استخدام <لأ href = "http://code.msdn.microsoft.com/TTxGen" يختلط = "نوفولو noreferrer"> ttxgen . ومع ذلك، وأنا لا أعتقد أن هذا النهج جداول تصل إلى سيناريو حيث يعتمد قالب T4 على أكثر من ملف واحد. قد تحتاج إلى إنشاء حزمة Visual Studio لمعالجة ذلك.

نصائح أخرى

ومتى تأخذها اداة لتنفيذ؟ قد يكون خيار واحد كسول لمجرد تحرير csproj بحيث <م> دائما تدير الأداة أثناء البناء (فرضا عبر <لأ href = "http://msdn.microsoft.com/en-us/library/ x8zx72cd.aspx "يختلط =" نوفولو noreferrer "> <Exec ... /> أو ملف targets مخصصة) - بالطبع، وهذا يعتمد على كونها سريعة لتنفيذ

وهناك طريقة أخرى سيكون لكتابة الرقائق التي تعمل باسم "أداة مخصصة" في VS، وببساطة يدعو إكس الحالية (أو أيا كان) مع وسائط الصحيحة. ليست تافهة، ولكن قابلة للتنفيذ ( نرى هنا ) - أعتقد هذا يفترض ثم يلعب بشكل جيد إلى حد ما مع الكشف عن التغيير. هو في الواقع على قائمتي من الاشياء للقيام لمشروع الحالي، لذلك سوف تجد في وقت قريب بما فيه الكفاية ...

يمكنك استخدام أوتو تي تي ملحق الاستوديو المرئي.

يسمح هذا الامتداد بتكوين المشغلات التي ستقوم بتشغيل قالب T4.

أحد المحفزات المحتملة هو تغيير الملف.في نموذج ملف التكوين في صفحة AutoTT، ​​يتطابق التعبير العادي للمشغلات مع جميع الملفات الموجودة في المجلدات المحددة (وحدات التحكم، المحتوى)، ولكن يمكنك تغييره بحيث يعمل مع ملف محدد فقط.

مرح هو خيار آخر للقيام بذلك.و أيضا تجديد T4, ، والذي يفعل ذلك بطريقة مختلفة.

هل حاولت استخدام <#@xsd?

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top