SlideShare uma empresa Scribd logo
1 de 10
Expression 的介紹及應用
2014/03/27
Bryan Lin
Agenda
• 什麼是 Expression
• Expression 的種類
• Expression 的應用
什麼是 Expression
• 在我們的程式碼裡面,所有的程式碼都可以使用 Expression
來組合
• 最常見的例子就是 Lambda Expression
 Expression<Func<int, bool>> lambda = num => num < 5;
Expression 的種類
Expression 的種類
• 其他種類請參考 MSDN 上面的說明:
http://msdn.microsoft.com/enus/library/system.linq.expressions.asp
x
Expression 的應用
• 範例1:組合出 x = 1 的 Expression (x 的型別為 Int32)
• 提示:
使用 Expression.Parameter
使用 Expression.Constant
使用 Expression.Equals
Expression 的應用
• 解答:
• Expression left = Expression.Parameter(typeof(Int32), “x”);
• Expression right = Expression.Constant(1);
• Expression expression = Expression.Assign(left, right);
• // x = 1
Expression 的應用
• 範例2:製作一個 Extension Method,如下所示:
Expression 的應用
• 解答:
FAQ

Mais conteúdo relacionado

Destaque

Inovação é A Solução
Inovação é A SoluçãoInovação é A Solução
Inovação é A SoluçãoSEBRAE MS
 
Projeto sem apresentacao feira_do_empreendedor
Projeto sem apresentacao feira_do_empreendedorProjeto sem apresentacao feira_do_empreendedor
Projeto sem apresentacao feira_do_empreendedorSEBRAE MS
 
Caderno de tarefas_do_conselheiro
Caderno de tarefas_do_conselheiroCaderno de tarefas_do_conselheiro
Caderno de tarefas_do_conselheiroRoseli Macedo Leal
 
Perspectivas Economia PetróLeo Setembro 2009 Resumido
Perspectivas Economia PetróLeo   Setembro 2009 ResumidoPerspectivas Economia PetróLeo   Setembro 2009 Resumido
Perspectivas Economia PetróLeo Setembro 2009 ResumidoAloizio Mercadante
 

Destaque (6)

Inovação é A Solução
Inovação é A SoluçãoInovação é A Solução
Inovação é A Solução
 
Projeto sem apresentacao feira_do_empreendedor
Projeto sem apresentacao feira_do_empreendedorProjeto sem apresentacao feira_do_empreendedor
Projeto sem apresentacao feira_do_empreendedor
 
Caderno de tarefas_do_conselheiro
Caderno de tarefas_do_conselheiroCaderno de tarefas_do_conselheiro
Caderno de tarefas_do_conselheiro
 
COSME-leaflet-ES
COSME-leaflet-ESCOSME-leaflet-ES
COSME-leaflet-ES
 
Semana14
Semana14Semana14
Semana14
 
Perspectivas Economia PetróLeo Setembro 2009 Resumido
Perspectivas Economia PetróLeo   Setembro 2009 ResumidoPerspectivas Economia PetróLeo   Setembro 2009 Resumido
Perspectivas Economia PetróLeo Setembro 2009 Resumido
 

Mais de LearningTech

Mais de LearningTech (20)

vim
vimvim
vim
 
PostCss
PostCssPostCss
PostCss
 
ReactJs
ReactJsReactJs
ReactJs
 
Docker
DockerDocker
Docker
 
Semantic ui
Semantic uiSemantic ui
Semantic ui
 
node.js errors
node.js errorsnode.js errors
node.js errors
 
Process control nodejs
Process control nodejsProcess control nodejs
Process control nodejs
 
Expression tree
Expression treeExpression tree
Expression tree
 
SQL 效能調校
SQL 效能調校SQL 效能調校
SQL 效能調校
 
flexbox report
flexbox reportflexbox report
flexbox report
 
Vic weekly learning_20160504
Vic weekly learning_20160504Vic weekly learning_20160504
Vic weekly learning_20160504
 
Reflection &amp; activator
Reflection &amp; activatorReflection &amp; activator
Reflection &amp; activator
 
Peggy markdown
Peggy markdownPeggy markdown
Peggy markdown
 
Node child process
Node child processNode child process
Node child process
 
20160415ken.lee
20160415ken.lee20160415ken.lee
20160415ken.lee
 
Peggy elasticsearch應用
Peggy elasticsearch應用Peggy elasticsearch應用
Peggy elasticsearch應用
 
Expression tree
Expression treeExpression tree
Expression tree
 
Vic weekly learning_20160325
Vic weekly learning_20160325Vic weekly learning_20160325
Vic weekly learning_20160325
 
D3js learning tips
D3js learning tipsD3js learning tips
D3js learning tips
 
git command
git commandgit command
git command
 

Expression 的介紹及應用