Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# T4模板中的Lambda表达式_C#_Templates_Lambda_T4 - Fatal编程技术网

C# 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模板中调用该类库。我已经做了很多次了。这并

在组合T4模板时,我加入了一个简单的lambda表达式:

<#=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 '>'