C# T4模板中的Lambda表达式
在组合T4模板时,我加入了一个简单的lambda表达式:C# T4模板中的Lambda表达式,c#,templates,lambda,t4,C#,Templates,Lambda,T4,在组合T4模板时,我加入了一个简单的lambda表达式: <#=string.Join(",", updateFields.ConvertAll(field => field.Name).ToArray())#> 在具有lambda表达式的行上 这已在模板外部进行检查,效果良好。T4不支持使用lambda表达式吗?如果没有,T4模板上下文中是否有其他不受支持的语言功能 谢谢 作为一种解决方法,您可以将该代码放入外部类库,然后可以从T4模板中调用该类库。我已经做了很多次了。这并
<#=string.Join(",", updateFields.ConvertAll(field => field.Name).ToArray())#>
在具有lambda表达式的行上
这已在模板外部进行检查,效果良好。T4不支持使用lambda表达式吗?如果没有,T4模板上下文中是否有其他不受支持的语言功能
谢谢 作为一种解决方法,您可以将该代码放入外部类库,然后可以从T4模板中调用该类库。我已经做了很多次了。这并不理想,但可以工作。如果您在Visual Studio 2008中使用T4,请确保在中将C#编译器版本设置为3.5。默认情况下,它使用2.0。谷歌搜索,但仍然是一个黑客。谢谢,这正是问题所在。如果您在Visual Studio 2012中使用T4,您会看到一条消息,上面说“不再支持C#2.0和3.5。尝试后将始终使用版本4”,该怎么办?我的tt仍然没有得到支持。
Compiling transformation: Invalid expression term '>'