从Web API响应中隐藏属性 [英] Hide properties from web api response

查看:57
本文介绍了从Web API响应中隐藏属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我要向Web API响应隐藏ModifiedbyModifieddateCreateddate属性。

我尝试使用[JsonOgnore][IgnoreDataMember],但不起作用。

[ModelMetadataType(typeof(UserModel))]
partial class TUsers
{
}

public class UserModel
{
    public int Userid { get; set; }
    [Required]
    public string Firstname { get; set; }
    public string Middlename { get; set; }
    public string Lastname { get; set; }
    public int? Modifiedby { get; set; }
    public DateTime? Modifieddate { get; set; }
    public DateTime? Createddate { get; set; }
}


    [HttpGet("{id}")]
    public IActionResult Get(int id)
    {
        try
        {
            var user = _service.GetUser(id);
            return Ok(new { status = Constants.Success, message = "", User = user });
        }
        catch (Exception ex)
        {
            return BadRequest(new { status = Constants.Failed, message = ex.Message });
        }
    }

实际结果

{
    "status": "success",
    "message": "",
    "user": {
        "userid": 0,
        "firstname": null,
        "middlename": null,
        "lastname": null,
        "modifiedby": null,
        "modifieddate": null,
        "createddate": null
    }
}

预期结果

{
    "status": "success",
    "message": "",
    "user": {
        "userid": 0,
        "firstname": null,
        "middlename": null,
        "lastname": null
    }
}

推荐答案

您可以简单地使用下面的属性。

[JsonIgnore]
public int? Modifiedby { get; set; }

这篇关于从Web API响应中隐藏属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆