استخدم TextTransform لإنشاء التعليمات البرمجية تلقائيا باستخدام T4 دون تشغيل Visual Studio

تحديث الصفحة :
تاريخ إنشاء الصفحة :

بيئة التشغيل

فيجوال ستوديو
  • فيجوال ستوديو 2022
نوافذ
  • ويندوز ١١

المتطلبات المسبقه

فيجوال ستوديو
  • يعمل حتى مع إصدار أقدم إلى حد ما

الشرط المسبق

تفترض هذه النصيحة ما يلي:

  • فيجوال ستوديو مثبت على ويندوز

في هذه الحالة ، سنستخدم أداة تسمى "TextTransform (أو TextTransformCore)" ، ولكن نظرا لأنها أداة مضمنة في Visual Studio ، فمن الضروري تثبيتها حتى إذا لم تقم بتشغيل Visual Studio.

ما الفرق بين "TextTransform.exe" و "TextTransformCore.exe"؟

"TextTransform.exe" هي أداة مبكرة كانت موجودة منذ ظهور إطار عمل الكيان.

TextTransformCore.exe هي أداة جديدة مبنية على .NET 6.

لا يوجد فرق وظيفي كبير ، لذلك لا يهم أي واحد تستخدمه.

إنشاء ملف T4 (.tt)

لا يختلف الأمر عما تقوم بإنشائه في Visual Studio ، لذا استخدم محرر نصوص لإنشائه. هذه المرة ، سنستخدم الكود الذي أنشأناه مسبقا ك Mr./Ms..

<#@ template debug="false" hostspecific="false" language="C#" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<#@ output extension=".cs" #>

<#
  List<string> types = new(){"Int", "Short", "Long", "Float", "Double", "Decimal"}; 
#>

public static class ParseExtensions
{
<# foreach (var type in types) { #>
<#   var typeLower = type.ToLower(); #>
  public static <#= typeLower #> Parse<#= type #>(this string self, <#= typeLower #> defaultValue)
  {
    return <#= typeLower #>.TryParse(self, out var val) ? val : defaultValue;
  }
<# } #>
}

في هذه الحالة ، سنضع هذا الملف في الموقع التالي. يمكنك تشغيله في أي مكان ، لذا اتركه أينما تريد.

  • ج: \ مؤقت \ Sample.tt

إنشاء التعليمات البرمجية باستخدام أداة سطر الأوامر "TextTransform"

في Visual Studio ، كان الأمر سهلا لأن Visual Studio قام تلقائيا بإنشاء رمز باستخدام "TextTransform" ، ولكن إذا كنت لا تستخدم Visual Studio ، فيجب عليك إنشاء رمز يدويا باستخدام "TextTransform".

TextTransform هو أداة سطر أوامر التي يتم تثبيتها عند تثبيت Visual Studio في المجلد التالي:

  • < درايف باث>\ ملفات البرنامج\مايكروسوفت البصرية ستوديو\\<البصرية ستوديو الإصدار>\\<طبعات>\Common7\IDE\TextTransform.exe
  • < مسار القيادة>\ ملفات البرنامج\مايكروسوفت البصرية ستوديو\\<البصرية ستوديو الإصدار>\\<طبعات>\Common7\IDE\TextTransformCore.exe

[مثال]

  • جيم : \\ ملفات البرنامج \\ مايكروسوفت البصرية ستوديو \\ 2022 \\ المجتمع \\ كومون7\ بيئة تطوير متكاملة \\TextTransform.exe

قم بتشغيل محطة طرفية أو موجه أوامر واستخدم TextTransform لإنشاء التعليمات البرمجية.

بالنسبة لنظام التشغيل Windows 11 ، قم بتشغيل Terminal من قائمة ابدأ. بالنسبة لأنظمة التشغيل الأخرى ، استخدم موجه الأوامر.

بالنسبة للمحطة ، قم بالتبديل إلى موجه الأوامر. لا يوجد شيء لا يمكنك فعله باستخدام PowerShell ، لكن الوصف يتغير قليلا.

cd في الأمر ، انتقل إلى المجلد حيث وضعت ملف .tt وأدخل الأمر كما يلي: (الرجاء تغيير إصدار مسار المجلد حسب الاقتضاء.)

[مثال على الإدخال]

  • "جيم : \\ ملفات البرنامج \\ مايكروسوفت البصرية ستوديو \\ 2022 \\ المجتمع \\ كومون7\ IDE \\ تحويل النص" Sample.tt

إذا نجحت ، تستمر العملية كما لو كانت تتم دون وقوع حوادث. إذا نظرت بالفعل إلى المجلد ، يمكنك أن ترى أن الكود يتم إنشاؤه تلقائيا.

يتم أيضا إنشاء المحتويات بشكل صحيح.

أريد تقصير مسار TextTransform عند تنفيذ أمر.

إذا كنت لا ترغب في كتابة مسار طويل إلى TextTransform في كل مرة تقوم فيها بتشغيل أمر ، فيمكنك تسجيل هذا المسار في "متغير بيئة". إذا كان موجه أوامر التطوير يأتي مع Visual Studio ، فسيشير إلى هذا المسار افتراضيا ، مما يسهل الكتابة.

إذا نظرت إلى مجلد Visual Studio من قائمة ابدأ ، فستجد موجه أوامر التطوير وتشغيله.

بنفس الطريقة ، عند كتابة أمر ، يمكنك حذف مسار TextTransform وتنفيذه.

بالمناسبة ، في حالة Windows 11 ، من السهل فتحه لأنه مدمج في الجهاز.

ضع الأوامر في ملف .bat أو .ps1 لتسهيل تشغيلها

المحتوى المراد وصفه هو نفسه عند إدخال أمر عادي ، لذلك يتم حذف المحتوى. اعتمادا على إعدادات نظام التشغيل ، قد يتم تقييده بحيث لا يمكن تنفيذه حتى إذا قمت بالنقر نقرا مزدوجا فوق ملف .bat أو .ps1 ، لذلك في هذه الحالة ، يرجى تعيينه بحيث يمكن تنفيذه.