Tôi không thể tìm ra điều này. Tại sao T4 không tìm được loại IEnumerable
? Tôi đang sử dụng Visual Studio 2010. Và tôi chỉ hy vọng ai đó biết tại sao?Sự cố T4 khi biên dịch chuyển đổi
<#@ template debug="true" hostspecific="false" language="C#" #>
<#@ assembly name="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" #>
<#@ import namespace="System" #>
<#@ import namespace="System.Data" #>
<#@ import namespace="System.Data.SqlClient" #>
<#@ output extension=".cs" #>
public static class Tables
{
<#
var q = @"
SELECT
tbl.name 'table',
col.name 'column'
FROM
sys.tables tbl
INNER JOIN
sys.columns col ON col.object_id = tbl.object_id
";
// var source = Execute(q);
#>
}
<#+
static IEnumerable Execute(string cmdText)
{
using (var conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=t4build;Integrated Security=True;"))
{
conn.Open();
var cmd = new SqlCommand(cmdText, conn);
using (var reader = cmd.ExecuteReader())
{
while (reader.Read())
{
}
}
}
}
#>
Lỗi 2 Biên soạn chuyển đổi: Loại hoặc namespace tên 'IEnumerable' 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?) C: \ Projects \ T4BuildApp \ T4BuildApp \ TextTemplate1.tt 26 9
.... và John - bạn không nhập không gian tên 'System.Collections' vào mẫu của bạn –
Ồ, làm thế nào tôi có thể không nhìn thấy điều này. Cảm ơn! Tôi phải đã bị mù trong một giờ hoặc lâu hơn về điều này ... –