Я работаю над проектом, где я позволю пользователям писать некоторый код, который будет скомпилирован, загружен и запущен, этот код позволит пользователям контролировать определенные части приложения. Однако, поскольку это позволяет им просто вставлять C # в работающее приложение, есть определенные ограничения, которые я бы предпочел иметь.
Есть ли способы, которыми вы можете запустить фрагмент кода, но, скажем, заблокировать любое использование System.Threading
или любое использование System.IO
?
Я знаю, что можно было бы пройтись по коду и удалить любые ссылки, но я уверен, что будут способы обойти это. Прежде чем написать это, я хотел бы, по крайней мере, проверить, что нет более простого и эффективного способа.
Я гуглил, но я либо смотрю не в том месте, либо задаю не тот вопрос. Однако я знаю, что вы, люди, переполняющие стеки, - гении. Есть идеи?
Спасибо, и любой ответ будет принята с благодарностью!