Używam metadanych i JsonIgnore do usunięcia specjalnego pola z serializacji.jak dynamicznie jsonignore według autoryzacji użytkownika?
[Authorize(Roles = "admin")]
public class UserController : ApiController
{
public IEnumerable<user> Get()
{
using (var mydb = new ModelContainer())
{
return mydb.userSet.ToList();
}
}
}
[MetadataType(typeof(user_Metadata))]
public partial class user
{
private class user_Metadata
{
[JsonIgnore]
public virtual password { get; set; }
public virtual adminFile { get; set; }
}
}
W jaki sposób mogę dynamicznie sterować, które pole ma być serializowane lub nie. Dla niektórych rzeczy, takich jak
public partial class user
{
private class user_Metadata
{
[JsonIgnore]
public virtual password { get; set; }
[Roes == admin?JsonIgnore:JsonNotIgnore] //some thing like this
public virtual adminFile { get; set; }
}
}
@ JamesNK, Dzięki, „Warunkowe” to słowo klucz, co mam szukać dla. –