~/talk

Beyond LINQ: Using Expression Trees in .NET

Talkat NDC Oslo 2020 · 2020-06-08..06-12· [dotnet, compilers-and-language-design]
slides:none on file

Shows how expression trees become a code‑generation toolkit: building a spec builder that creates dynamic filters and sorters for IQueryable, composing predicates with a parameter rebinder so OR/AND work without Invoke, and transpiling C# validation expressions into JavaScript for React/Angular forms. Recommends creating delegates via compile+cache for performance, cites large speedups replacing Activator/Invoke with compiled constructor delegates, and demonstrates working scaffolding and integration‑test generation that reduced boilerplate in production.

AI-written summary · about

  1. 0:00Introduction and context
  2. 1:07E-commerce scenario
  3. 1:48The problem with ORMs
  4. 5:32Delegates vs. expressions
  5. 6:11Advanced de-compilation
  6. 8:24Combining criteria
  7. 10:00Specification pattern
  8. 11:41Implementation details
  9. 12:27Live coding and debugging
  10. 14:18Handling expression invoke
  11. 15:56Rebinding expression parameters
  12. 16:35Expression composition
  13. 17:02Practical implementation analysis
  14. 20:55Advanced composition tricks
  15. 22:48Meta-programming overview
  16. 23:40Automapper integration
  17. 25:08Automatic filtering and sorting
  18. 25:53Dynamic query demo
  19. 26:37Code generation for logic
  20. 28:55Cross-platform validation
  21. 30:21Transpiling to JavaScript
  22. 30:46Type definition communication
  23. 31:24Validation demo
  24. 31:48Backend-to-Frontend sync
  25. 33:20Expression visitors
  26. 34:55Testing with expressions
  27. 35:12Analyzing invocations
  28. 35:57Integration test automation
  29. 37:56Performance benchmarks
  30. 41:27Conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.