2016-03-03 129 views
1

我通過http://datalan.aspone.cz/運行網站時出現問題,其中紅色表中的數據仍然不可用,因此返回錯誤消息 「錯誤關閉 遠程服務器返回錯誤:(500) 內部服務器錯誤。「遠程服務器返回錯誤:(500)網站上的內部服務器錯誤

此外,網站已經在本地主機上運行,​​沒有任何問題。

我不知道我犯了什麼錯誤,但如果有人幫助解決這些問題,我將不勝感激。

我附上下面的代碼:

public List<Data> Generate() 
    { 
     List<Data> data = new List<Data>(); 

     WebRequest request = WebRequest.Create("http://192.168.1.100/st0.xml"); 

     request.Credentials = new System.Net.NetworkCredential("admin", "admin"); 

     WebResponse response; 
     Stream ReceiveStream; 
     XmlTextReader reader = null; 

     try 
     { 
      response = request.GetResponse(); 
      ReceiveStream = response.GetResponseStream(); 
      reader = new XmlTextReader(ReceiveStream); 
     } 
     catch (WebException ex) 
     { 
      response = ex.Response; 
      ReceiveStream = response.GetResponseStream(); 
     } 

     List<Tuple<string, string, int>> values = new List<Tuple<string, string, int>>(); 

     while (reader.Read()) 
     { 
      if (reader.NodeType == XmlNodeType.Element) 
      { 
       switch (reader.Name) 
       { 
        case "ia0": 
         double temp = Convert.ToDouble(reader.ReadString())/10; 
         values.Add(new Tuple<string, string, int>(String.Format(temp.ToString() + " °C"), "Temperature", 0)); 
         break; 
        case "ia1": 
         double vol = Convert.ToDouble(reader.ReadString())/10; 
         values.Add(new Tuple<string, string, int>(String.Format(vol.ToString() + "V"), "Voltage", 1)); 
         break; 
        case "di0": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "INPD0", 2)); 
         break; 
        case "di1": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "INPD1", 3)); 
         break; 
        case "di2": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "INPD2", 4)); 
         break; 
        case "di3": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "INPD3", 5)); 
         break; 
        case "out0": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "OUT0", 6)); 
         break; 
        case "out1": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "OUT1", 7)); 
         break; 
        case "out2": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "OUT2", 8)); 
         break; 
        case "out3": 
         values.Add(new Tuple<string, string, int>(reader.ReadString(), "OUT3", 9)); 
         break; 
       } 
      } 
     } 

     for (int i = 0; i < values.Count; i++) 
     { 
      for (int j = 0; j < values.Count; j++) 
      { 
       if (i == values[j].Item3) 
       { 
        data.AddRange(new List<Data> { new Data { Type = values[j].Item2, Value = values[j].Item1 } }); 
       } 
      } 
     } 

     return data; 
    } 
+1

您是否有權訪問Web服務器以查看事件查看器? –

+0

@PhilCooper不,我沒有。我使用freehosting aspone網站。 –

回答

0

我已經解決了這些問題。

找到解決辦法後,我在Web.config中編輯的代碼由下列步驟操作:

<location path="." inheritInChildApplications="false"> 
<system.web> 
... 
... 
... 
</system.web> 
</location> 

在接下來的時間它可以幫助別人。

1

它最有可能有事情做與此代碼:

WebRequest request = WebRequest.Create("http://192.168.1.100/st0.xml"); 

您正在調用本地IP地址,如果它是共享特別是託管,它可能不會喜歡這個請求。

+0

還有問題沒有解決。您可以檢查以避免使用上面的命令,並返回相同的錯誤。 –

相關問題