2

グーグルマップを使ってページ上の2か所の距離を表示したい。

だから私はURLを書く方法を見つけました、しかし私は応答をデコードして私のウェブサイトに表示する方法を知りませんか?これが私がこれまでに持っているものです:

string distancematrix = "http://maps.googleapis.com/maps/api/distancematrix/json?        origins=34746+Florida&destinations=Universal+Studios+Florida|Orlando+Internation+Airport&mode=driving&units=imperial&sensor=false";
Json.Write(distancematrix, Response.ToString);

@コマンドを使用して各結果をページに入れることはできますか?

ありがとう、ギャビン

4

1 に答える 1

0

これは、外部サイトではなく外部ファイルからデータを取得する (簡略化された) cshtml ページの例ですが、それにもかかわらず、役立つ場合があります。

@{
    var json = File.ReadAllText(Server.MapPath("~/TestJSON.json"));
    var data = Json.Decode(json);
}

<html>
    <head>
    </head>
    <body>
        <p>
            @data.destination_addresses <br/>
            @data.origin_addresses <br/>
            @data.rows <br/>
            @data.status
        </p>
    </body>
</html>

よくわかりませんが(見慣れない方法で記述されたJSON構文に関してはやや初心者なので)、括弧(つまり、「[」と「]」)の使用が示唆されているようです配列の使用?

この方法で配列にアクセスしている場合、次のようになります。

@{
    var json = File.ReadAllText(Server.MapPath("~/TestJSON.json"));
    var data = Json.Decode(json);
    var i = 0;
}

<html>
    <head>
    </head>
    <body>
        <p>
            @{
                while(i < data.destination_addresses.Length)
                {
                    data.destination_addresses[i]; <br/>
                    i++;
                }
            }
        </p>
    </body>
</html>

これで問題が解決しない場合はお知らせください。

于 2013-03-11T21:42:02.207 に答える