我正在尝试使用.NET Micro Framework(C#)从Fez Panda II微控制器板进行HTTP POST,但是当我尝试获取请求流时,以下代码会抛出您在代码片段后看到的异常。我似乎无法在互联网上找到任何有关此特定错误的信息。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.urlofthewebsite.com/Word/");
string name = "00ABCDEFDEADBEEF";
string rawData = "2012-02-08\t14:53:08\t755F66";
try
{
string postData = "deviceID=" + name + "&rawData=" + rawData;
Debug.Print(postData);
byte[] data = Encoding.UTF8.GetBytes(postData);
//request.ContentType = "application/x-www-form-urlencoded";
//request.ContentLength = data.Length;
//Set parameters of web request for HTTP POST
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
request.KeepAlive = false;
//Create a stream to send the post data to
//ERROR OCCURS HERE
Stream postDataStream = request.GetRequestStream();
etc.
调试输出:
#### Exception System.Exception - 0x00000000 (1) ####
#### Message: DNS server IP address was not found.
#### GHIElectronics.NETMF.Net.Dns::GetHostEntry [IP: 0038] ####
#### GHIElectronics.NETMF.Net.HttpWebRequest::EstablishConnection [IP: 00e1] ####
#### GHIElectronics.NETMF.Net.HttpWebRequest::SubmitRequest [IP: 0013] ####
#### GHIElectronics.NETMF.Net.HttpWebRequest::GetRequestStream [IP: 0008] ####
#### Fresh_Step.Program::httpPostRawData [IP: 0052] ####
#### Fresh_Step.Program::Main [IP: 0004] ####
A first chance exception of type 'System.Exception' occurred in GHIElectronics.NETMF.W5100.Http.dll
问题是什么?很感谢任何形式的帮助。如果需要其他信息,我很乐意提供。
答案 0 :(得分:0)
熊猫无法确定www.urlofthewebsite.com的位置。这可能是因为您尚未在Panda的网络配置中配置DNS服务器。
使用MFDeploy工具(.Net Micro Framework的一部分)配置设备的网络设置。运行该工具,使用窗口顶部的下拉列表确保它已连接到正确的设备,然后选择Target - >配置 - >网络打开网络配置屏幕。确保DNS主地址包含本地DNS服务器的IP地址。
有关MFDeploy工具的更多信息,请参阅此MSDN文章:http://msdn.microsoft.com/en-us/library/cc544584.aspx
如果您将设备配置为使用DHCP,请确保它获取IP地址并获取知道www.urlofthewebsite.com所在位置的DNS服务器。