Как я испускаю код и ввожу его в загруженный блок?

Люди уже дали много ответов относительно платформ веб-приложений, но MVC (или любая другая парадигма) не связывается с сетью только. Это только для ясности.

, Если Вы о простом MVC, Опоры соответствуют парадигме более строгим способом. Django интерпретирует MVC, и они называют его образцовое шаблонное представление , но идея ролевого разделения является тем же. Фактическим выбором является вопрос персонального вкуса, хотя ни один из этих двух, которые я рассматриваю легкий (Опоры могли бы казаться легче , но на самом деле не, и недавно Django, не собрал некоторый дополнительный вес - скорее всего, Вы не будете соответствовать даже небольшому приложению как персональный блог в резидентной памяти 20 МБ).

, Конечно, ничто не будет мешать Вам писать Вашу собственную платформу, например, с WebOb. Можно сделать его как световой сигнал , как Вы хотите (и изучите много вещей, пробующих).

7
задан casperOne 13 March 2012 в 16:50
поделиться

3 ответа

Вы можете внедрить код в существующую (уже загруженную) сборку, используя интерфейсы ICorDebug . Это делает Edit and Continue.

Вычислите ваши дельта-байты и вызовите ICorDebugModule2 :: ApplyChanges . Дополнительные сведения см. В образце кода MDbg .

Когда-то давно мы использовали ICorDebugModule :: GetEditAndContinueSnapshot и их родственников, но теперь они устарели.

Обновление Если вас не волнует внедрение кода в уже загруженную сборку, использование Reflection.Emit для создания новой сборки более эффективно и намного проще.

7
ответ дан 7 December 2019 в 03:17
поделиться

Вы также можете использовать пространство имен System.Reflection.Emit и создать динамическую сборку в памяти.

Альтернативой является использование CodeDom для генерации и компиляции кода, а затем вызова его.

XMLSerialization () выполняет последнее.

1
ответ дан 7 December 2019 в 03:17
поделиться

Вы можете использовать Mono.Cecil манипулировать ИЛ. Это мощный инструмент, хотя почему-то отсутствует документация.

1
ответ дан 7 December 2019 в 03:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: