Наше внутреннее HR-приложение разработано поставщиком, но мне было предложено изменить поведение определенной функциональности без их помощи (что я не хочу делать, но изучаю ...).Рассматриваемая функциональность - это страница .ashx, которая выполняет несколько операций поиска в базе данных и вызывается с помощью функций javascript на веб-странице.Мы хотим добавить еще один поиск в базе данных.
У нас есть контроль над кодом javascript, так что это не проблема, но код страницы .ashx содержится в скомпилированной сборке.Я нашел, где это, и изучил это, используя .Net Reflector.Реализовать используемые методы не составит труда, если бы это было технически выполнимо.
Могу ли я создать новую сборку, вставить в нее исходный код, взятый с помощью Reflector, внести свои изменения, добавить DLL в приложение изатем установить новый .ashx, чтобы сослаться на него?
Биты, о которых я беспокоюсь из-за невозможности:
Код относится к некоторым классам вендоров, которые содержатся в других сборках;Могу ли я просто добавить ссылки на эти сборки в Visual Studio, чтобы он мог скомпилироваться, а затем, когда он будет скомпилирован и помещен на сервер, все будет работать?
У меня будут проблемы с получением веб-приложения для принятияновая DLL, учитывая, что обычно это приложение не является чем-то, что мы вносим в себя?слишком далекоВместо этого я бы создал новую DLL-библиотеку, содержащую только одну нужную мне функцию (основываясь на материалах, взятых из существующей DLL с использованием Reflector).Мне нужно, чтобы этот код ссылался на код других поставщиков утилит, чтобы он мог получить доступ к классам, необходимым для доступа к платформе.Я бы сделал новую страницу .ashx, чтобы обслуживать код в новой DLL.
К счастью, после всего этого я не в курсе, потому что мой клиент согласен с тем, что нам не хватает отчаянияпопробовать все это!Но спасибо за помощь, которая, безусловно, полезна.