2012-10-08 22 views
-2

在C#中,如果語句我捕獲的長度屬性,並希望爲其應用條件語句。但我相信我的條件聲明不起作用。我應該如何爲給定的代碼應用條件語句。長度「66」意味着互聯網連接已經關閉,否則就會關閉。如果在C#中的長度屬性語句

WebClient client = new WebClient(); 
string value; 
try 
{ 
    value = client.DownloadString("http://google.com"); 
} 
catch(WebException ex) 
{ 
    value = (ex. Message); 
} 
if (value = "66") 
{ 
    Console.WriteLine("Internet connection is down"); 
} 
else 
{ 
    Console.WriteLine("Internet connection is up"); 
} 
Console.WriteLine(value.Length);   
Console.WriteLine("Press any key to continue"); 
Console.ReadKey(true); 
+7

您可以將代碼更改爲if(value.Length == 「66」)'。但即使如此,我仍然認爲依靠錯誤消息的長度並不是一個好主意(考慮f.e.localization)。 –

+0

我只想互聯網連接關閉,所以當互聯網連接關閉時,它總是顯示「Internet Explorer無法顯示網頁」,這實際上是我檢查我的負載平衡器URl。我會得到兩個結果只有一個是空的HTML字符串或Internet Explorer無法顯示頁面。謝謝 – Sohail

回答

9

value = "66"是一個賦值,不相等比較,這將是value == "66"

+1

或'value.Length == 66' –

+0

@AdamHouldsworth其實,是的,我會這麼認爲。 (: –

0

如果(值= 「66」) - >如果(價值== 「66」)

必須返回一個布爾

0
if (value = "66") 

手段,去的說法,如果的分配字符串 「66」 到可變值是成功的

喬需要使用 「==」

if (value == "66") 

= - >分配 == - >等於

0

我真的不確定這是檢測互聯網連接的安全方法。當我嘗試此代碼,我拉網線外面,我得到

「遠程名稱無法解析:‘google.com’」

這是51個字符。

WebClient似乎沒有檢測連通性的屬性,但this post可能有所幫助。