Там могут быть существующие решения, я не знаю.(Есть несколько довольно изящных инструментов внедрения / манипуляции с байт-кодом во время выполнения, так что ...)
Но при наличии достаточных разрешений (и уровня доверия! - это большое) можно скомпилироватьна лету и / или отправлять различные выражения самооценки по сети (это отличается от отправки байт-кода, как такового, хотя это теоретически можно сделать, если байт-код или его эквивалент можно извлечь).
Приведенные выше подходы не будут отправлять Action <...>, которая потребует извлечения байт-кода для сериализации (включая захват контекста, если есть), а скорее что-то вроде Компиляция C #на лету , за которым вы можете перейти к интересному обсуждению и, наконец, найти CodeDOM .
С другой стороны, LINQ "решает" проблему извлечения байт-кода / де-компиляция с использованием деревьев выражений .Обратите внимание, что он не передает байт-код, а использует этот метод, чтобы разрешить удаленное выполнение деревьев выражений (распространенным является SQL-запрос).