Задать вопрос

Существует ли в C# способ встроить в код данные, переданные программе вводом?

Добрый день, подскажите пожалуйста - быть может в С# существует какой-либо способ встроить в код программы то, что введёт пользователь? Понимаю, что звучит неоднозначно, так что приведу ориентировочный пример того, что именно я имею в виду:

string inputcons = console.readline();
Function(newclass.'inputcons');


Если способ существует - объясните, пожалуйста, синтаксис (или дайте ссылку) и подводные камни(в JS, насколько мне известно, что-то такое существует, но с большими косяками).
Заранее спасибо и прошу прощения за, быть может, глупый вопрос.
  • Вопрос задан
  • 1057 просмотров
Подписаться 6 Оценить Комментировать
Решения вопроса 2
Комментировать
@cursedgrail
Только средствами динамической компиляции, или, если правильнее называть вещи, рефлексей.
Почитайте про пространство имён System.Reflection.
Синтаксис там простой, методы принимают на вход строковые аргументы.

Но я бы задумался о целесообразности такого подхода. Возможно, стоило бы пересмотреть архитектуру - динамическая компиляция является довольно медленной процедурой и может создать неслабую дыру в защите.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
AngelOfSnow
@AngelOfSnow
Embedded software engineer
Если я правильно понял суть вопроса, то подобные вещи решаются более красивым способом, таким как встраивание скриптового языка в программу (например Lua):
https://habrahabr.ru/post/197262/
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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