我需要从MVC方法返回一个JsonResult
对象,但在发送之前需要删除其中一个元素。
更新:
我正在尝试在不映射的情况下完成此操作,因为该对象非常庞大且非常复杂。
我该如何做到这一点?
例如:
public class MyClass {
public string PropertyToExpose {get; set;}
public string PropertyToNOTExpose {get; set;}
public string Otherthings {get; set;}
}
并且
JsonResult result = new JsonResult();
result = Json(myObject, JsonRequestBehavior.AllowGet);
然后从结果中删除PropertyToNOTExpose。
真实代码更新:
public JsonResult GetTransaction(string id)
{
//FILL UP transaction Object
JsonResult resultado = new JsonResult();
if (CONDITION USER HAS NOT ROLE) {
var jObject = JObject.FromObject(transaction);
jObject.Remove("ValidatorTransactionId");
jObject.Remove("Validator");
jObject.Remove("WebSvcMethod");
resultado = Json(jObject, JsonRequestBehavior.AllowGet);
} else {
//etc.
}
return resultado;
}
JObject
,然后在传递给结果之前删除属性。 - NkosiJObject
上调用ToString
,以获取要在结果中发送的 Json。 - Nkosi