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

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

<
От версии < 6.5 >
отредактировано Alexandr Fokin
на 2020/02/16 21:35
К версии < 8.6 >
отредактировано Alexandr Fokin
на 2023/02/08 13:21
>
Изменить комментарий: К данной версии нет комментариев

Комментарий

Подробности

Свойства страницы
Название
... ... @@ -1,1 +1,1 @@
1 -Expression tree
1 +Expression tree | Деревья выражений
Родительский документ
... ... @@ -1,1 +1,1 @@
1 -xwiki:Разработка.NET.C#.WebHome
1 +Разработка.NET.C#.Рантайм и типы.WebHome
Содержимое
... ... @@ -1,12 +1,54 @@
1 +**ExpressionTree** позволяет накапливать выражения, содержащие операторы языка c#, в виде древовидной структуры. А после этого скомпилировать эту структуру в делегат.
2 +При этом формировать и компилировать деревья выражений можно в рантайме.
1 1  
4 +----
5 +
6 +**Может использоваться для:**
7 +создания Generic типа с возможностью выполнять математические операции над элементами T. Например матрица <int> или <double>, в которой будет логика складывающая значения ячеек
8 +Выполнения маппинга свойств (Как более быстрый аналог [[Рефлексия | Reflection>>Разработка.NET.C#.Рантайм и типы.Reflection | Рефлексия .WebHome]])
9 +iqueryable провайдер, формирующий запрос во внешнее хранилище (EntityFramework SQL)
10 +
11 +----
12 +
13 +**Ссылки:**
14 +
15 +[[GoF Design Patterns | Паттерн Interpreter>>doc:Архитектура и модели.Паттерны проектирования.GoF Design Patterns.WebHome]]
16 +
17 +Деревья выражений в C# на примере нахождения производной (Expression Tree Visitor vs Pattern matching)
18 +https://habr.com/ru/post/486972/
19 +
20 +Введение в Expressions в языке C#
2 2  http://sonyks2007.blogspot.com/2014/07/expressions-c.html
22 +
23 +Expression Tree. Просто о сложном
3 3  http://sonyks2007.blogspot.com/2014/08/expression-tree.html
25 +
26 +Expressions в C# — impress yourself!
4 4  https://habr.com/ru/post/83169/
28 +
29 +Принципы работы IQueryable и LINQ-провайдеров данных
5 5  https://habr.com/ru/post/256821/
6 6  
32 +----
7 7  
34 +==== Внутренние ссылки: ====
8 8  
9 -Может использоваться для
10 -создания Generic типа с возможностью выполнять математические операции над элементами T. Например матрица <int> или <double>, в которой будет логика складывающая значения ячеек
11 -выполнения маппинга свойств (более быстрый аналог рефлексии)
12 -iqueryable
36 +====== Дочерние страницы: ======
37 +
38 +{{children/}}
39 +
40 +====== Обратные ссылки: ======
41 +
42 +{{velocity}}
43 +#set ($links = $doc.getBacklinks())
44 +#if ($links.size() > 0)
45 + #foreach ($docname in $links)
46 + #set ($rdoc = $xwiki.getDocument($docname).getTranslatedDocument())
47 + * [[$escapetool.xml($rdoc.fullName)]]
48 + #end
49 +#else
50 + No back links for this page!
51 +#end
52 +{{/velocity}}
53 +
54 +----