asp.net如何返回一类角?

标签: Asp.net AngularJS
发布时间: 2017/3/26 1:59:13
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我想要将一个类从控制器返回到角

$scope.GetUser = function (user_id) {            
            $.ajax({
                type: "POST",
                url: "Menu/GetUser",
                data: '{"user_id":"' + user_id + '"}',
                contentType: "application/json; charset=utf-8",
                success: function (resp) {
                    debugger
                },
                failure: function (resp) {
                    alert(resp);
                }
            });
        }

我的控制器

[HttpPost]
        //public JsonResult GetUser(string user_id)
        public User GetUser(string user_id)
        {
            return rep.GetUser(user_id);

            //return Json(new
            //{
            //    user = rep.GetUser(user_id)
            //}, JsonRequestBehavior.AllowGet);

        }

我的模型

public User GetUser(string user_id)
        {
            var user = ctx.tblUsuario.
                Where(x => x.usuario_id.Trim() == user_id).FirstOrDefault();

            if (user == null)
                return null;

            return new User(user.usuario_id, user.usuario_nome, user.usuario_perfilid, user.usuario_dtcadastro, user.usuario_senha);
        }

我的课

namespace DB_Pro.Models
{
    public class User
    {
        private string Usuario_id { get; set; }
        private string Usuario_nome { get; set; }
        private int Usuario_perfilid { get; set; }
        private DateTime Usuario_dtcadastro { get; set; }
        private string Usuario_senha { get; set; }

        public User(string usuario_id, string usuario_nome, int usuario_perfilid, DateTime usuario_dtcadastro, string usuario_senha)
        {
            Usuario_id = usuario_id;
            Usuario_nome = usuario_nome;
            Usuario_perfilid = usuario_perfilid;
            Usuario_dtcadastro = usuario_dtcadastro;
            Usuario_senha = usuario_senha;
        }        
    }
}

但当我回到成功 Ajax 功能,它只是有反应等于"DB_Pro.Models.User"

我到底做错了?

解决方法 1:

你为什么不在你的控制器中创建一个 json 和寄给角控制器吗?。应该真的工作和我看到你有 json 创作评论在控制器中。

这个想法是角使用 javascript 对象,如果您从控制器发送,您应该能够轻松地访问其内容。

而不是将用户放置到 json,在得到它的参数,

名称︰ u.NAME,姓︰ u.SURNAME,...

和从角室直接访问它们。如果您创建了一个 json 与用户,角不会知道哪些用户是,这就是为什么你得到这种反应。让用户,与用户,以这种方式,当角接收到的数据,你只需要采取然后你需要从数据的信息的参数对象的 json:

data.name data.surname

编辑︰

经过研究,我认为这可以工作︰

    [HttpPost]
    //public JsonResult GetUser(string user_id)
    public User GetUser(string user_id)
    {
        User u = rep.GetUser(user_id);
        var result = Json(new { Usuario_nome = u.Usuario_nome,
                                Usuario_perfilid = u.Usuario_perfilid});

        return result;

    }

试一试,告诉我它是否能解决问题

赞助商