Я хотел бы иметь возможность загружать несколько наборов сущностей RIA за один вызов без объединения / объединения нескольких небольших операций LoadOperation вместе, чтобы они загружались последовательно.
У меня есть несколько страниц, на которых есть несколько выпадающих списков. Эти комбинированные списки заполняются статическими значениями из базы данных (например, значениями состояния).
Прямо сейчас я предварительно загружаю эти значения в свою виртуальную машину одним методом, который связывает воедино серию операций LoadOperation для каждого типа, который я хочу загрузить. Например:
public void LoadEnums() {
context.Load(context.GetMyStatusValues1Query()).Completed += (s, e) =>
{
this.StatusValues1 = context.StatusValues1;
context.Load(context.GetMyStatusValues2()).Completed += (s1, e1) =>
{
this.StatusValues2 = context.StatusValues2;
context.Load(context.GetMyStatusValues3Query()).Completed += (s2, e2) =>
{
this.StatusValues3 = context.StatusValues3;
(....and so on)
};
};
};
};
Хотя это работает нормально, это кажется немного неприятным. Кроме того, я хотел бы знать, когда завершится последняя операция загрузки, чтобы я мог после этого загрузить любую сущность, над которой я хочу работать, чтобы эти перечисляемые значения правильно разрешались в элементах формы, таких как списки и списки. (Я думаю) я не могу сделать это легко выше без создания делегата и вызова этого по завершении последней операции загрузки.
Итак, мой вопрос: кто-нибудь знает лучший шаблон для использования, в идеале, где я могу загрузить все свои статические наборы сущностей в одной LoadOperation?