gpt4 book ai didi

asp.net-mvc - 在 ASP.NET MVC 应用程序中为 json 输出过滤域对象的最佳方法

转载 作者:行者123 更新时间:2023-12-04 04:48:11 39 4
gpt4 key购买 nike

如果我在 asp.net mvc 中呈现常规 View ,那么在我的页面中显示的唯一域对象属性就是我专门写出的那些。例如:

<div><%= Customer.FirstName %></div>

但是,如果我为 json 序列化域对象,它将包含每个属性。例子:
public JsonResult Customer (int? id)
{
Customer customer = _serviceLayer.GetCustomer (id.Value);

return Json (customer);
}

由于我不希望每个 Customer 属性都暴露出来,在这种情况下过滤 json 的输出属性的最佳方法是什么?您可以使用像 UpdateModel() 这样的包含/排除列表吗?使用公共(public)类 JsonCustomer 等代理类?你会推荐什么?

最佳答案

我为此使用匿名类型:

var customer = from c in serviceLayer.GetCustomers()
where c.Id == id.Value
select new { FirstName = c.FirstName };

这不仅仅是一个好主意。相反,如果您的对象图包含循环引用,它可以防止您在调用 Json() 时遇到异常。

关于asp.net-mvc - 在 ASP.NET MVC 应用程序中为 json 输出过滤域对象的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/372955/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com