Сначала добавьте свойство для подсчета связанных объектов в Entity Framework Code. - PullRequest
3 голосов
/ 06 октября 2011

Я использую Code First для написания своего слоя данных, а затем для передачи во внешний интерфейс Silverlight с использованием служб RIA. Поскольку мне нужно все сериализовать, я бы хотел получить дополнительную информацию о каждой сущности, прежде чем отправлять ее по проводам (чтобы сократить время загрузки). В прошлом я делал это, переводя все в класс POCO, который имеет дополнительную информацию. Мне интересно, есть ли лучший способ сделать это. Чтобы дать вам представление, вот мой класс:

public class District
{
    // ... Other properties, not important
    public ICollection Installations { get; set; }

    //The property I would like to calculate on the fly
    [NotMapped]
    public int InstallationCount { get; set; }
}

Есть ли способ автоматически рассчитать это свойство перед его отправкой по проводам? Одним из вариантов может быть просто включить коллекцию Installation, но это значительно увеличивает объем (в сущности Installation имеется около 50 свойств и, возможно, сотни записей на район).

1 Ответ

1 голос
/ 06 октября 2011

Вместо того, чтобы делать InstallationCount автоматическим свойством, просто используйте функцию get для возврата счетчика коллекции Installations.

public class District
{
    public virtual ICollection<Installation> Installations { get; set; }

    [NotMapped]
    public int InstallationCount { get { return Installations.Count; } }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...