ASP.NET, EntityFramework - отправляет минимальные данные клиенту - PullRequest
0 голосов
/ 20 марта 2012

У меня есть приложение javascript с ASP.NET MVC 3, SignalR и Entity Framework в бэкэнде.Я всегда должен подготавливать данные, потому что я не хочу отправлять все атрибуты клиенту (проблема производительности? Например, у человека есть адрес, у страны есть ... и это для> 1000 лиц).Итак, теперь я всегда создаю функцию подготовки перед отправкой данных клиенту:

public void GetPeople()
{
    PersonRepository personRepository = new PersonRepository(_context);
    var pList = personRepository.GetAll();

    var pClientList = prepare(pList);

    Clients[Context.ConnectionId].loadPeople(pClientList);
}

private object prepare(IEnumerable<Person> pList)
{
    return from p in pList
           select new
           {
                id = p.ID,
                firstName = p.FirstName,
                lastName = p.LastName,
                displayName = p.DisplayName
           };
}

, и я не думаю, что это хорошая практика, потому что я должен всегда создавать для каждой сущности функцию подготовки ина сложных объектах это становится странным.

1 Ответ

0 голосов
/ 20 марта 2012

Для этого следует использовать AutoMapper .

. Он также поддерживает выравнивание для сложных типов, и его очень легко внедрить и использовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...