대용량 C# 프로젝트의 작은 부분에서 DLR을 사용하고 있는데 IronPython이 문제의 언어입니다..NET DLR 안전 또는 샌드 박스 처리 된 스크립트
시스템의 일부 사용자는 작은 스크립트를 입력하여 동작을 사용자 정의 할 수 있습니다. 제가하고 싶은 것은 부작용없는 순수한 함수 나 어떤 종류의 샌드 박스를 사용하여 그 함수가 바깥의 어떤 것도 만질 수 없도록 제한하는 것입니다.
또한 사용자는 함수 본문 만 입력 할 수 있습니다. 함수 헤더 및 인수 사양은 파이썬 DLR 엔진에 전달되기 전에 자동으로 코드에 미리 지정되므로이를 호출하는 시스템의 C# 측에서 정확히 전달할 args 및 되돌아 오는 것. 사용자는 인수로 제공된 값만을 기반으로 간단한 조작 및 테스트를 수행해야합니다.
이 괜찮 : return (a * 100) > b;
이 확인되지 않습니다 :
delete_file_system(); return (a * 100) > b;
는 어떻게 달성 할 수 있는가? 더 적절한 언어 또는 기술 선택이 있습니까?