2016-05-15 24 views
0

Google APIを使用して2つの場所の距離を取得し、距離情報があるかどうかを確認するには、APIのjsonレスポンスにステータスフィールドがあります。 "OK"か "NOT_AVAILABLE"かその行に沿って何かを読んでください。私はこのC#の変数jsonの値を文字列と比較する

if (disJSON["rows"][0]["elements"][0]["status"] == "OK") 

ことのようにそれを行うので、私は距離情報を使用できるようにステータスがOKであれば、それは状況は私がに見えた

OKであっても、偽毎回返すということです確認したいですデバッガが上記のjsonの要素の値と値をチェックするデバッガは "\" OK \ ""です。それは変だ。だから、私はこのようなif文の比較文字列として使用した。

if (disJSON["rows"][0]["elements"][0]["status"] == "\"OK\"") 

しかし、これも常にfalseを返す。任意のアイデアをどのようにこれを正しく比較するには?

答えて

4

disJSON["rows"][0]["elements"][0]["status"]のコンパイル時のタイプがJTokenかそのようなものだと思われます。あなたが文字列にキャストした場合、a)文字列と文字列を比較します。 b)コンパイラは、参照IDを比較する代わりにbool ==(string, string)オーバーロードを使用します。

string status = (string) disJSON["rows"][0]["elements"][0]["status"]; 
if (status == "OK") 
{ 
    ... 
} 
+0

Worked great!ありがとう! – Atirag