.NET Micro Framework中的HTTP POST - GetRequestStream()上的异常

时间:2012-03-26 04:01:20

标签: c# .net http post .net-micro-framework

我正在尝试使用.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

问题是什么?很感谢任何形式的帮助。如果需要其他信息,我很乐意提供。

1 个答案:

答案 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服务器。