2016-03-03 97 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

还有问题没有解决。您可以检查以避免使用上面的命令,并返回相同的错误。 –

相关问题