Запуск JavaScript - отражение вызовов API vb.net?
-
08-07-2019 - |
Вопрос
Можете ли вы вызвать API-функцию vb.net, используя отражение из кода JavaScript?
Я только начал играть с отражением, у меня есть этот фрагмент кода, который работает, я хочу изменить его на страницу JavaScript.
Dim RawPlugin As Reflection.Assembly
RawPlugin = Reflection.Assembly.LoadFrom("C:\Inetpub\wwwroot\demo\MasterApplication\getSession\bin\Debug\getSession.dll")
Dim Instance As Object
Instance = RawPlugin.CreateInstance("getSession.class1", True, _
Reflection.BindingFlags.Default, Nothing, Nothing, Nothing, Nothing)
theValue = Instance.getSessionValue(Session).ToString
Кто-нибудь знает, возможно ли это?
Решение
Код на стороне клиента не говорит напрямую с кодом на стороне сервера. Если искомая информация не затрагивается пользователем между запросами страниц, то у вас есть два варианта: вывести клиентское значение на стороне сервера с запросом страницы (таким образом, это значение находится внутри переменной JavaScript на странице), или сделать это вызов ajax. Если информация может быть устаревшей между запросами страницы, то единственный вариант - вернуть значение из вызова ajax.
Другие советы
В ASP.Net код .Net запускается на вашем веб-сервере. Javascript запускается на компьютере пользователя, в их браузере. Этот пользователь может даже не иметь Windows , не говоря уже о среде выполнения .Net.
В этом отношении у вашего пользователя может даже не быть включенного JavaScript.
НЕТ, вы не можете использовать отражения или что-то в этом роде .Net напрямую из javascript.
Соус:
вы можете создавать обратные вызовы, используя ajax, вызывать страницу aspx, которая при загрузке страницы запускает код, который затем создает отражение в .net, а затем передает конечный результат обратно на сторону javascript, это работает, я знаю, что это делает ... однако это означает, что внутри проекта вам нужно иметь страницу обратного вызова (должна быть скомпилирована, если есть какие-либо изменения).
Полагаю, мне нужно [использовать JavaScript ajax для вызова страницы обратного вызова, которая выполняет отражение]