Это возможно с использованием пространств имен System.Reflection.Emit или System.CodeDom, но это не совсем хорошая идея, поскольку нет механизма для контроля того, что такое пространства имен, а какие нет. Пользователь может создать строку, которая уничтожит ваш жесткий диск.
eval () - подобные функции - это огромные дыры в безопасности, и их следует избегать. Предпочтительной альтернативой является DSL (предметно-ориентированный язык) .