Изменения документа Expression tree | Деревья выражений

Редактировал(а) Alexandr Fokin 2024/02/10 14:04

<
От версии < 6.3 >
отредактировано Alexandr Fokin
на 2020/02/16 21:34
К версии < 7.2 >
отредактировано Alexandr Fokin
на 2021/04/05 09:43
>
Изменить комментарий: Добавлен комментарий

Комментарий

Подробности

Свойства страницы
Родительский документ
... ... @@ -1,1 +1,1 @@
1 -Разработка.NET.c#.WebHome
1 +xwiki:Разработка.NET.C#.WebHome
Содержимое
... ... @@ -1,12 +1,27 @@
1 1  
2 +**ExpressionTree** позволяет накапливать выражения, содержащие операторы языка c#, в виде древовидной структуры. А после этого скомпилировать эту структуру в делегат.
3 +При этом формировать и компилировать деревья выражений можно в рантайме.
4 +
5 +
6 +**Может использоваться для:**
7 +создания Generic типа с возможностью выполнять математические операции над элементами T. Например матрица <int> или <double>, в которой будет логика складывающая значения ячеек
8 +Выполнения маппинга свойств (Как более быстрый аналог рефлексии)
9 +iqueryable провайдер, формирующий запрос во внешнее хранилище (EntityFramework SQL)
10 +
11 +
12 +**Ссылки:**
13 +
14 +Деревья выражений в C# на примере нахождения производной (Expression Tree Visitor vs Pattern matching)
15 +https://habr.com/ru/post/486972/
16 +
17 +Введение в Expressions в языке C#
2 2  http://sonyks2007.blogspot.com/2014/07/expressions-c.html
19 +
20 +Expression Tree. Просто о сложном
3 3  http://sonyks2007.blogspot.com/2014/08/expression-tree.html
22 +
23 +Expressions в C# — impress yourself!
4 4  https://habr.com/ru/post/83169/
5 -https://habr.com/ru/post/256821/
6 6  
7 -
8 -
9 -Может использоваться для
10 -создания Generic типа с возможностью выполнять математические операции над элементами T. Например матрица <int> или <double>, в которой будет логика складывающая значения ячеек
11 -выполнения маппинга свойств (более быстрый аналог рефлексии)
12 -iqueryable
26 +Принципы работы IQueryable и LINQ-провайдеров данных
27 +https://habr.com/ru/post/256821/
XWiki.XWikiComments[0]
Автор
... ... @@ -1,0 +1,1 @@
1 +XWiki.cccc1808
Комментарий
... ... @@ -1,0 +1,6 @@
1 +Компиляция дерева в делегат
2 +{{code language="c#"}}
3 +Expression
4 + .Lambda(expressionValiarble)
5 + .Compile();
6 +{{/code}}
Дата
... ... @@ -1,0 +1,1 @@
1 +2021-04-05 09:43:52.468