JavaScriptのトリガー-vb.net API呼び出しの反映?
-
08-07-2019 - |
質問
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呼び出しから値を返すしかありません。
他のヒント
ASP.Netでは、.NetコードはWebサーバーで実行されます。 Javascriptは、ユーザーのコンピューターのブラウザーで実行されます。そのユーザーは、.Netランタイムはもちろんのこと、 Windows さえ持っていないかもしれません。
さらに言えば、ユーザーはJavaScriptを有効にしてさえいないかもしれません。
いいえ、リフレクションやその他の.NetはJavaScriptから直接使用できません。
soution:
ajaxを使用してコールバックを作成し、aspxページを呼び出して、ページの読み込み時にコードビハインドを実行し、.netでリフレクションを作成し、最終結果をjavascript側に返します。私はこれを知っています...しかし、これはプロジェクト内にコールバックページが必要であることを意味します(変更がある場合はコンパイルする必要があります)。
私がする必要があると思うのは、[JavaScript ajaxを使用して、リフレクションを実行するコールバックページを呼び出す]