2012-03-02 6 views
-2

私のウェブサイトに接続するユーザーのIPアドレスを取得しています。this exemple URLを使用して自分の国をデータベースに保存したいのですが、その情報にアクセスする方法がわかりませんページは私のページから私を与えます。C#asp net htmlページの値を読み取る

string ip = getUserIp(); //Getting the user's IP address 
string theUrl = "http://api.hostip.info/get_html.php?ip=" + ip; 

var country = "The country from theUrl"; //How do i get it? 

ありがとうございました!

+0

'Request'オブジェクトから取り出してください... – gdoron

+1

コードビハインドでコントロールを定義していますか?出力を設定しますか?そうでなければこれらの要素にアクセスできますか?彼らは標準のHTML要素ですか?彼らは実際に.NETコントロールですか?簡潔な答えを提供する情報が少なすぎます。 –

+2

あなたが試したことを私たちに示す必要があります。これは「宿題をする」サイトではありません。 – deltree

答えて

5

私たちにはあまりお世話になりませんが、WebClientクラスを使用してURLにアクセスしてみてください。

var values = result.Split(new[]{Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries); 
var dictionaryValues = values.ToDictionary(
           value => value.Split(':')[0], 
           value => value.Split(':')[1]); 
var country = dictionaryValues["Country"]; // UNITED STATES (US) 

Country: UNITED STATES (US) 
City: New York, NY 
IP: 207.46.197.32 

あなたはString.Split()でいくつかの文字列操作で結果を解析することができます...

WebClient client = new WebClient(); 
string result = client.DownloadString(address); 

は、出力は以下の通りであることを考えると、あなたは国の値を取得したいです
+0

意味のある方法で区切られた値ではなく、ページ全体の出力をダウンロードします。答えではありません。 –

+5

これは非常に曖昧な質問に対する簡単な答えです。 OPが明確化を提供するまで、これ以上提供することはできません。 – jrummell

+2

また、OPの状況を推測しているので、将来の読者には価値を追加しません。問題は(綿密に作成する必要はありませんが)閉じておき、他の人がコミュニティを汚染するのは問題ないと思います。今更新された質問でも、これはより少ない要件を満たしています。 –

1

コードビハインドまたはその他のビジネス層:

WebClient client = new WebClient(); 
var value = client.DownloadString("http://api.hostip.info/get_html.php?ip=207.46.197.32"); 
+0

これは意味のある方法で区切られた値ではなく、ページ全体の出力をダウンロードします。答えではありません。 –

関連する問題