如何过滤 breeze.webapi 从服务器返回的实体

How to filter breeze.webapi returned entities from the server

我有一个标准 breeze web-server 公开了项目

[HttpGet]
public IQueryable<Project> Projects()
{
    return _db.Context.Projects;
}

如何防止 ProjectNoLongerExist=true 开始包含在从此处返回到 JavaScript 客户端的查询中,从而影响 breezejs 客户端的功能? .. 嗯我也想隐藏这个 属性 另外,人们不希望看到 他们的项目实际上没有被删除!

你可以在你的 breeze 控制器上试试这个...

public IQueryable<Project> Projects()
    {
        return _db.Context.Projects.Where(o => o.NoLongerExist == true);
    }

防止 json 序列化 NoLongerExist 属性 通过这样做在你的模型上使用数据注释,我假设你在你的后端使用 EF6 和 JSON.NET...

[Table("Project")]
public partial class Project
{
    public Project()
    {

    }

    public int id { get; set; }

    [JsonIgnore]
    public bool NoLongerExist  { get; set; }
}