Ho una classe SQL LINQ 2 che vorrei esporre tramite un servizio web. Ci sono alcune proprietà interne che non voglio essere disponibile.Utilizzo di XmlIgnore su classi parziali generate
Normalmente lancerò [XmlIgnore], ma poiché le proprietà sono nella metà generata, non posso farlo.
Ho cercato di utilizzare MetadataType dopo this post, che sembra dovrebbe consentirmi di definire gli attributi di proprietà in un'altra classe.
Il mio codice simile a questa:
[MetadataType(typeof(ProspectMetaData))]
public partial class Prospect : ApplicationBaseObject
{
}
public class ProspectMetaData
{
[XmlIgnore]
public object CreatedDateTime { get; set; }
[XmlIgnore]
public object AmendedDateTime { get; set; }
[XmlIgnore]
public object Timestamp { get; set; }
}
sto riferimento a questo attraverso un servizio Web ASP.NET da un progetto Silverlight.
Il problema è che gli attributi [XmlIgnore] vengono ignorati, quelle proprietà vengono inviate tramite.
Qualcuno ha qualche idea di cosa potrebbe andare storto qui? e quale potrebbe essere il modo migliore per farlo?
certamente sembra in questo modo ed è un vero peccato. Non ho alcun controllo sugli accessor sulle proprietà generate, quindi non lo risolve veramente per me. Immagino che dovrò andare con una classe proxy piuttosto che inviare i miei oggetti di business. –
È necessario ripristinare i livelli di accesso al momento della rigenerazione. :( –