إضافة خصائص إلى قالب T4 - خادم اختيار، قاعدة البيانات، الجدول

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

  •  22-08-2019
  •  | 
  •  

سؤال

يا قوم،

أرغب في إنشاء بعض قوالب T4 لتوليد ملفات فئة (حوالي 7 لكل طاولة) من قاعدة بيانات لدعم أورمنا الداخلي (لا تسأل - قصة طويلة وأسباب تاريخية .....)

ما كنت أحب القيام به حقا هو ملكية على قالب TT الرئيسي الخاص بي ل Pick Server وقاعدة البيانات والجدول التي تقوم بإنشاء الملفات (شيء مثل منتقي الجدول في Codesmith).

نظرا لأن هذا لا يبدو أنه موجود (أو يفعل ذلك؟)، فأنا أحسب أفضل شيء يستخدمه ثلاث خاصية ثلاث سلسلة للحصول على الخادم وقاعدة البيانات واسم الجدول واستخدام SMO للاتصال بهذا الجدول والحصول على بيانات العمود التي أحتاج إليها.

حاولت متابعة أمثلة OLEG SYCH، وتوصلت إلى:

<#@ property name="serverName" processor="PropertyProcessor" type="System.String" #>
<#@ property name="databaseName" processor="PropertyProcessor" type="System.String" #>
<#@ property name="tableName" processor="PropertyProcessor" type="System.String" #>

ولكن بعد ذلك، أشير إلى تلك الخصائص في كتلة التعليمات البرمجية التي تتصل بالخادم المحدد باستخدام SMO لاسترداد البيانات؟

<#
    Server server = new Server();
    Database database = new Database(server, "DASECO_DEV");
    Table table = new Table(database, "T_User");
    table.Refresh();
#>

حاولت وضع <#= serverName #> داخل قوسين من الخادم () المنشئ - ولكن هذا لا يعمل :-( يبدو أنني عالقة بعض الشيء هنا ...... ما هي نقطة وجود خصائص إذا لم أتمكن من تقييم وتستخدم قيمها ! :-)

أي من الأشخاص يود ذلك؟؟

مارك

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

المحلول

وماذا عن هذا؟

<#    
    Server server = new Server(serverName);    
    Database database = new Database(server, databaseName);    
    Table table = new Table(database, tableName);    
    table.Refresh();
#>
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top