Использование silverlight 4 с RIA Services Toolkit, май 2010 г.
У меня есть модель данных сущности (.edmx), которая содержит ссылку на FK.
В моем классе службы DomainContext (который ссылается намой .edmx) я изменил свой метод GET для включения Include ("FK_ENTITY_TABLE_NAME"):
public IQueryable<PARENT_ENTITY> GetPARENT_ENTITY()
{
this.ObjectContext.PARENT_ENTITY.Include("FK_ENTITY_TABLE_NAME");
}
В моем классе метаданных службы DomainContext (.metadata.cs) с именем "внутренний запечатанный класс PARENT_ENTITYMetadata" я добавил [Атрибут include] для свойства, которое ссылается на мою сущность FK:
[Include]
public FK_ENTITY_TABLE_NAME { get; set; }
Мой сгенерированный (.g.cs) файл прокси-сервера службы ria содержит следующий DataContract с XmlIgnore :
private EntityRef<FK_ENTITY_TABLE_NAME_PARENT_ENTITY> _fk_entity_table_name;
public sealed partial class PARENT_ENTITY : Entity
{
...
[Association("FK_ENTITY_TABLE_NAME_PARENT_ENTITY", "entity_id", ",entity_id", IsForeignKey=true)]
[XmlIgnore()]
public FK_ENTITY_TABLE_NAME FK_ENTITY_TABLE_NAME
{
...
Поэтому, когда я использую XmlSerializer / DataContractSerializer и на моем PARENT_ENTITY, он сразу пропускает сериализацию моей сущности "FK_ENTITY_TABLE_NAME:
<PARENT_ENTITY>
(note: no FK_ENTITY_TABLE_NAME serialized here)
</PARENT_ENTITY>
Есть ли что-нибудь, что я могу сделать, чтобы управлять атрибутом XmlIgnore извставляется в эти сгенерированные файлы?