2012-07-11 27 views
5

Tôi đã nghiên cứu google và SO và không thể tìm thấy câu trả lời.Không thể sử dụng lớp tùy chỉnh của tôi trong mẫu T4

Tôi đã xem bài đăng sau mà không thành công.

Use class inside a T4 template

Trong mẫu T4 của tôi, tôi đang cố gắng sử dụng AddControls Phương pháp định nghĩa trong lớp ResourceManager Tuỳ chỉnh của tôi nhưng tôi nhận được lỗi sau.

chuyển đổi Biên soạn: Loại hoặc namespace tên 'WebApplication1' không thể được tìm thấy (là bạn thiếu một chỉ thị sử dụng hoặc tham khảo một hội?)

Xin hãy giúp tôi.

namespace WebApplication1 
{ 
    public static class ResourceManager 
    { 

     public static void AddControls(List<string> controlList) 
     { 
      controlList.Add("Label1"); 
      controlList.Add("Button1"); 
     } 
    } 
} 

đang Template T4 của tôi trông như sau:

<#@ template debug="false" hostspecific="true" language="C#" #> 
<#@ output extension=".txt" #> 

<#@ assembly name="$(TargetPath)" #> 
<#@ import namespace="WebApplication1" #> 
<#@ import namespace="System.Collections.Generic" #> 


<# 
    List<String> controlList = new List<String>(); 

    ResourceManager.AddControls(controlList); 

    foreach (string str in controlList) 
    { 

     string propName= str; 
#> 
    My control is <#=   propName #> 

<# 
    } 

#> 

Trả lời

4

Xây dựng dự án có chứa namespace WebApplication1 và cố gắng tiết kiệm lại mẫu. Điều đó có hiệu quả đối với tôi khi sử dụng mã của bạn.

+0

tuyệt vời .. cảm ơn Dan –

Các vấn đề liên quan