Могу ли я скрыть свой Поля ICollection , когда у меня есть отображение "один ко многим" в EF4 code-only?

Мои классы домена, которые имеют сопоставления «один-ко-многим», обычно принимают следующую форму (непроверенный код):

public Customer Customer
{
    // Public methods.

    public Order AddOrder(Order order)
    {
        _orders.Add(order);
    }

    public Order GetOrder(long id)
    {
        return _orders.Where(x => x.Id).Single();
    }

    // etc.

    // Private fields.

    private ICollection _orders = new List();
}

Примеры кода EF4 только Я видел, как открывать общедоступную коллекцию ICollection при работе с отношениями «один ко многим».

Есть ли способ сохранить и восстановить мои коллекции, открыв их? В противном случае может показаться, что мои объекты домена будут разработаны с учетом требований ORM, что, похоже, противоречит духу наших усилий. Предоставление ICollection (с его методами Add и т. Д.) Не кажется особенно чистым и не будет моим подходом по умолчанию.

Обновление

Нашел этот пост , который предполагает, что это не так. возможно в мае. Конечно, плакат Microsoft действительно сказал, что они были " Какие характеристики производительности я могу ожидать, если использую ...

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

Так как мне нужно использовать несколько glBuffersubData для обновления вершин частиц, я все равно передаю вершины в видеопамять каждый кадр (как если бы я использовал обычный массив вершин)? Есть ли польза от VBO в этом случае?

Это для устройств iOS. Фактический вызов отрисовки: glDrawElements (GL_POINTS, num_particles, GL_UNSIGNED_SHORT, pindices);

Должен ли я использовать GL_STREAM_DRAW или GL_DYNAMIC_DRAW ?

17
задан bobobobo 18 September 2012 в 19:15
поделиться