SilverlightコントロールがHTMLでホストされている場合、SilverlightでクライアントのIPアドレスを取得する方法はありますか?SilverlightのIPアドレス
答えて
私が知る限り、直接行う方法はありません。これを達成するためにWebMethodを作成することができます。または他のトリック。
チェックこのスレッドを、いくつかの提案がありますhttp://silverlight.net/forums/t/34744.aspx
詳細については、以下の方法を試してください(最初は通常はこのトリックを行う必要があります)。またはhereを参照してください。
Request.ServerVariables(”REMOTE_HOST”)
HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"]
HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
Request.UserHostAddress()
Request.UserHostName()
string strHostName = System.Net.Dns.GetHostName();
string clientIPAddress = System.Net.Dns.GetHostAddresses(strHostName).GetValue(0).ToString();
これはHTMLのためではないですが... Asp.netの場合に渡し、そのパラメータ...これは不可能であるHTMLからの私の知識に私が試してみました –
@クリスすべてのメソッドは、SilverlightでASP.Net(.asmx)Webサービスを使用しています。 SilverlightでクライアントのIPアドレスを見つける方法がないため、サービス終了時にこれを記録する必要がありました。上記の方法はすべてローカルシステム上で正常に動作しますが、プロダクションサーバーにサービスを公開するときは問題ありません。エラーを出し始めます。 –
エラー:オブジェクト参照がオブジェクトのインスタンスに設定されていません。 のStackTrace:System.WebのでSystem.Web.Hosting.ISAPIWorkerRequest.GetRemoteAddressでSystem.Web.Hosting.ISAPIWorkerRequestInProc.GetServerVariableでSystem.Web.Hosting.ISAPIWorkerRequestInProc.GetAdditionalServerVar(のInt32インデックス) (文字列名) () で.HttpRequest.get_UserHostAddress() –
うん!私はwebserviceの方法のアイデアについて知っていた....しかし、私は他の回避策があるかもしれないと思った.... –
私の知識のまわりで直接仕事。 – NinethSense
しかし、あなたのopnionはこれがなぜsilverlightの制限であるのですか? –