Tengo una clase POCO que se envía al navegador como una cadena JSON en .NET 3.5 sp1. Solo estoy usando la serialización JSON predeterminada y tengo algunos campos que quiero ignorar. Quiero poner un atributo similar a [System.Xml.Serialization.XmlIgnore] en ellos para que no se serialicen.
c#
.net
asp.net-mvc
json
serialization
runxc1 Bret Ferrier
fuente
fuente

[ScriptIgnore]es tu arándano.
fuente
Solo necesita agregar el
[ScriptIgnore(ApplyToOverrides = true)]en su archivo de plantilla de texto (.tt).Aquí una parte de mi plantilla de texto antes
#> <#=codeStringGenerator.NavigationProperty(navigationProperty)#> <#Una vez que inserté el código, la línea sobre
codeStringGeneratormis clases se generó automáticamente y se veía así:[ScriptIgnore(ApplyToOverrides = true)] public virtual ICollection<Currency> Currencies { get; set; }También necesitaba modificar la
UsingDirectivesfunción para insertar"using System.Web.Script.Serialization;"fuente
ApplyToOverridesparece ser muy importante en una propiedad virtualEstablezca la propiedad como interna. Sin embargo, depende de tu estructura. Tomar en consideración.
fuente