如何将这些字符串转换为布尔值?

问题描述:

我使用GET JSON请求知道事务的状态(检查每5秒):如何将这些字符串转换为布尔值?

string webAddr = "https://shapeshift.io/txStat/" + textBox1.Text; 

     var httpWebRequest = (HttpWebRequest)WebRequest.Create(webAddr); 
     httpWebRequest.ContentType = "application/json; charset=utf-8"; 
     httpWebRequest.Method = "GET"; 

     var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse(); 
     using (var streamReader = new StreamReader(httpResponse.GetResponseStream())) 
     { 
      var responseText = streamReader.ReadToEnd(); 
      var apiResponse = JsonConvert.DeserializeObject<TransactionStatus>(responseText); 
     } 

     if (TransactionStatus.status = "no_deposits") 
     { 
      label7.Text = "Pending.."; 
     } 
     else if (TransactionStatus.status = "received") 
     { 
      label7.Text = "Received.."; 
     } 
     else if (TransactionStatus.status = "complete") 
     { 
      label7.Text = "Completed !"; 
     } 
     else 
     { 
      label7.Text = "..."; 
     } 

我的问题是,我无法检查该字符串值,因为它需要“布尔”。我怎样才能改变这个布尔?或者有任何其他方法可以做我想要做的检查?谢谢 !

+2

你正在通过使用一个等号在你的'if'语句中赋值。更改'TransactionStatus.status = ...'到'TransactionStatus.status == ...' – mrogers

+0

哈哈我很转储,谢谢! – EduardLula

+0

我建议使用switch(TransactionStatus.status)而不是这个if if else if噩梦。 – Filburt

== not =。

TransactionStatus.status = "no_deposits" 

应该

TransactionStatus.status == "no_deposits" 

否则就认为你分配一个值状态,没有比较的。

+0

是的,发布后得到它。无论如何,谢谢 – EduardLula

+0

我发布后多次解决问题很有趣。 – GrandMasterFlush