Qual è lo scopo della proprietà IsReference
in DataContract
? In che modo la richiesta e la risposta variano a seconda della proprietà applicata?Proprietà IsReference nel contratto dati
risposta
Determina la modalità di serializzazione degli oggetti, per impostazione predefinita, IsReference=false
.
L'impostazione IsReference = true
consente la serializzazione di alberi di oggetti che possono fare riferimento l'un l'altro. Quindi, con un elenco di Employees
che ogni hanno una proprietà per Manager
(che è anche un Employee
), un riferimento al Manager
per ogni Employee
può essere ritenuta piuttosto che incorporare il Manager
all'interno di ogni Employee
nodo:
IsReference=false
produrrebbe:
<Employee>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Employee>
<Employee>
<Manager>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Manager>
<Name>Bob</Name>
</Employee>
<Employee>
<Manager>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Manager>
<Name>Alice</Name>
</Employee>
Dove come IsReference=true
produrrebbe:
<Employee z:Id=“i1“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager i:nil=“true“ />
<Name>Kenny</Name>
</Employee>
<Employee z:Id=“i2“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager z:Ref=“i1“ />
<Name>Bob</Name>
</Employee>
<Employee z:Id=“i3“ xmlns:z=“http://schemas.microsoft.com/2003/10/Serialization/“>
<Manager z:Ref=“i1“ />
<Name>Alice</Name>
</Employee>
frammenti presi da questo weblog che ha una spiegazione completa insieme ad esempi dell'XML generato con la proprietà applicata.
MSDN - IsReference Property fornisce i dettagli nonché Interoperable Object References.
Anche IsReference
non esiste in .NET Framework 3.5. Quindi potresti ottenere errori quando lo usi con quella versione di Framework - esiste solo in 4.5, 4, 3.5 SP1 e Silverlight.
"Errore 297 'System.Runtime.Serialization.DataContractAttribute' non contiene una definizione per 'IsReference'"
- 1. Dati del contratto WCF e dati delle entità di riferimento?
- 2. cosa significano contratto-primo e contratto-ultimo?
- 3. Non tutti i parametri nel contratto di dati WCF passano attraverso la chiamata al servizio Web
- 4. eccezione serializzazione DataContract (nome del contratto dati non è prevista)
- 5. Contrattuale violazione contratto generale
- 6. Si tratta di un bug nel correttore statico del contratto?
- 7. Dati principali: utilizzo di Proprietà transitori nel gruppo
- 8. Contratto ultimo web services?
- 9. autofac e Contratto classi
- 10. Best practice del contratto di codice
- 11. Proprietà dinamiche nel Regno
- 12. Come aggiungere nuovi dati a dati esistenti nel file delle proprietà?
- 13. Trasferimento proprietà di dati numpy
- 14. Dati principali e proprietà transitorie
- 15. Impossibile eseguire il cast di classe di base (contratto di dati) per classe derivata
- 16. Problema di disallineamento contratto WCF
- 17. Codice Contratto o se dichiarazione?
- 18. Scala - design semplice per contratto
- 19. File di dati e proprietà
- 20. Proprietà POCO di binding dati
- 21. impostazione visualizzazione proprietà nel codice
- 22. Cosa significa "contratto" di una classe significa
- 23. Clausole di proprietà intellettuale/copyright reciprocamente vantaggiose per i lavori freelance basati su contratto
- 24. Stato di Itunes Connect Contratto in sospeso
- 25. Dattiloscritto: nuovo() Contratto di interfaccia non applicato
- 26. Differenza tra proprietà accessoria e proprietà dati in ECMAScript?
- 27. Qual è l'approccio migliore ai servizi Web: prima il contratto o il contratto?
- 28. Tipi generici, proprietà e strutture dati persistenti
- 29. Python: proprietà idiomatiche per i dati strutturati?
- 30. Quale tipo di elenco/raccolta è preferibile utilizzare in un contratto di dati WCF?
+1 per il collegamento webblog. Questo ha aiutato molto. – Darcy