将Json数据发布到RESTAPI

将Json数据发布到RESTAPI,rest,windows-phone-7,windows-8,windows-phone-8,windows-phone,Rest,Windows Phone 7,Windows 8,Windows Phone 8,Windows Phone,我正在开发WP8应用程序,我是新手。。我想知道我的post方法是否正确,因为我无法在url中发布数据,因为它会产生异常 我的课堂内容… public class Register { public int id { get; set; } public string password_reset_hash { get; set; } public string temp_password { get; set; }

我正在开发WP8应用程序,我是新手。。我想知道我的post方法是否正确,因为我无法在url中发布数据,因为它会产生异常

我的课堂内容…

public class Register     
    {

        public int id { get; set; }
        public string password_reset_hash { get; set; }
        public string temp_password { get; set; }
        public bool remember_me { get; set; }
        public string activation_hash { get; set; }
        public string ip_address { get; set; }
        public bool status { get; set; }
        public bool activated { get; set; }
        public string permissions { get; set; }
        public DateTime last_login { get; set; }
        public DateTime created_at { get; set; }
        public DateTime updated_at { get; set; }
        public string email { get; set; }
        public string password { get; set; }
        public string conformpassword { get; set; }
        public string username { get; set; }      
    }
这是我的代码。

public  void btn_register_click(object sender, RoutedEventArgs e)
        {
            string url="myurl";
            Register res=new Register();// my class
            res.email = txt_email.Text;
            res.password = txt_password.Text;
            res.conformpassword = txt_conf_psswrd.Text;
            res.username = txt_username.Text;
            res.created_at = DateTime.Now;
            res.last_login = DateTime.Now;
            res.updated_at = DateTime.Now;
            res.status = true;

            json = JsonConvert.SerializeObject(res);
            WebClient wc = new WebClient();
            var URI = new Uri(url);  
            wc.Headers["Content-Type"] = "application/json";                
            wc.Headers["ACCEPT"] = "application/json";
            wc.UploadStringCompleted += new UploadStringCompletedEventHandler(wc_UploadStringCompleted);
            wc.UploadStringAsync(URI, "POST", json);             

        }

        private void wc_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)
        {
            try
            {
                MessageBox.Show(e.Result); 
                //e.result fetches you the response against your POST request.         

            }

            catch (Exception exc)
            {
                MessageBox.Show(exc.ToString()); //i'm getting error here..
            }
        }
我的屏幕设计..

错误为..


谢谢

在我看来,您使用的URI有问题。您发布的错误消息显示服务器返回“未找到”标题。也许这不太正确?我在你发布的代码中没有看到确切的URI<代码>字符串url=“myurl”看起来不是您要使用的url

这也是为什么您不能访问响应流而不出现以下异常:
MessageBox.Show(e.Result)。只是没有有效的回应。此处记录了这一点:

您可以通过检查
UploadStringCompletedEventArgs
()的
error
属性来确定是否发生了此类错误