Как разрешить пользователям создавать сценарии для веб-приложения ASP.NET? - PullRequest
1 голос
/ 17 сентября 2009

Веб-приложение, написанное моей организацией для выполнения функций обслуживания клиентов, не имеет такой возможности. Я знаю, что есть плагины Firefox для автоматизации браузера, но я хотел бы предоставить инфраструктуру и средство для управления и выполнения скриптов через наше веб-приложение.

Пользователь будет писать сценарии, которые проверяют комиссионные за свои продажи, возможно, оповещать их о заказах, ожидающих обработки по истечении определенного периода времени, или автоматизировать общие комментарии, которые политика обязывает их прикреплять к каждому заказу. Я делал подобные вещи в Reflection, получая доступ к приложению CCA на мэйнфрейме, когда был CSR .

С чего мне начать? Как мне сохранить это в безопасности? Могу ли я предоставить функции создания сценариев прямо в браузере? Какие части объектной модели я выставляю, или я создаю доступный для сценария слой только для этого? Какой язык (языки) я должен / могу поддерживать?

РЕДАКТИРОВАТЬ: "Не делай этого!" не является полезным ответом.

Ответы [ 2 ]

4 голосов
/ 23 сентября 2009

Взгляните на Jint :

Jint - это скрипт-движок, основанный на языке Javascript. Используя Jint, разработчики могут предоставлять полностью пригодные для сценариев приложения, выполнять код .NET без компиляции или создавать внешнюю логику конфигурации, используя наиболее используемый язык сценариев.

2 голосов
/ 17 сентября 2009

Во-первых, позвольте мне сказать вам, из опыта с аналогичными запросами, это будет не использоваться так, как вы хотите; неизбежно вы в конечном итоге будете писать для них эти функции или исправлять ошибки, которые они совершают.

Эти люди не программисты - вы программист. Вы интерфейс сценариев. Они могут запрашивать программы, спрашивая вас, и вы будете реализовывать их (правильно).

Не предоставлять интерфейс языка сценариев. Не пишите собственный DSL, используя boo или похожий «крутой» язык.

Примите разумный подход; принять разумный подход и написать эти вещи для них.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...