2009-03-10 5 views
0

Можете ли вы назвать функцию api vb.net, используя отражение от кода javascript?Вызов JavaScript - отражение вызовов vb.net api?

Я только начал играть с отражением, у меня есть этот фрагмент кода, который работает, я хочу изменить его на страницу 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 

Кто-нибудь знает, возможно ли это?

ответ

2

Код на стороне клиента не говорит непосредственно на стороне сервера. Если информация, которую вы ищете, не затрагивается между запросами страницы пользователем, тогда у вас есть два варианта: вывести значение стороне сервера клиенту с запросом страницы (так что это значение находится внутри переменной JavaScript на странице) или сделайте это ajax-вызовом. Если информация может быть устаревшей между запросами страниц, то вы можете только вернуть значение из вызова ajax.

+0

Удивительно, это именно то, что нам нужно было исправить ... несколько раз нужно было подумать за пределами ящиков. –

0

НЕТ, вы не можете использовать отражения или что-нибудь .Net в этом отношении, непосредственно из javascript.

+0

LOL - Хорошо, что я неправ. Хорошо провести время в javascript –

+0

Вы посмотрели на свой вопрос? Уверяю вас, что ответ на вопрос «Можете ли вы назвать функцию api vb.net из javascript, используя отражение?» несомненно, НЕТ. Используйте AJAX все, что вы хотите, чтобы он не «менял [ваш код] на javascript». –

+0

Расслабься, ребята, не расстраивайтесь. Он использует вызов Ajax для запуска функции на сервере, которая, случается, использует рефлексию, чтобы выполнить ее работу ... Он не делает отражение непосредственно с Javascript. – 7wp

1

В ASP.Net код .NET работает на вашем веб-сервере. Javascript запускается на компьютере пользователя в браузере. У этого пользователя может даже не быть Windows, не говоря уже о времени выполнения .Net.

В этом случае ваш пользователь может даже не включить javascript.

+0

Что делать, если для его программы используется собственное приложение, используемое сотрудниками, и требование использовать его для включить javascript? Тогда проблема с включенным javascript исчезает. – 7wp

+0

также обратите внимание, что он пытается вызвать этот фрагмент кода на сервере с помощью вызова Ajax. не называя прямое отражение в javascript, как вы думаете. – 7wp

+0

thats correct, я должен был указать в своем сообщении, что это были требования, которые все имеют javascript. –

-1

soution:

вы можете создать обратные вызовы с помощью Ajax, чтобы вызвать страницу ASPX, что на странице загрузки, запускает код позади, что потом создает свое отражение в .net, а затем передает конечный результат обратно на стороне javascript это работает, я знаю, что это ... однако это означает, что внутри проекта вам нужна страница обратного вызова (ее необходимо скомпилировать, если есть какие-либо изменения).

я думаю, что мне нужно сделать, это [использование JavaScript Ajax для вызова страницы обратного вызова, которая выполняет отражение]

+0

Это именно то, что я сказал, но по какой-то причине я был замедлен. Вы можете использовать JS-only-решение, такое как jQuery, для вызова любой страницы в вашем приложении и использования полученного текста в качестве данных «веб-службы». В этом случае «веб-сервис» является всего лишь общим термином для любого веб-ресурса. – Rich

+0

Я поддержал вас, так как ваш ответ был прав, я не знаю, кто вас ниспровергал .. –