Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WPF, Silverlight Новый топик    Ответить
 Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Не могу понять как выбрать все значения из таблицы удовлетворяющие условию. Конструкция
z_mainplan record_spec = ResourceWrapper.CurrentDomainContext.z_mainplans.FirstOrDefault(r => r.id_spec == 3);

находит первую запись у которой значение столбца "id_spec" равно 3. А мне нужно получить набор всех строк у которых id_spec=3.
Скажите это возможно?
Спасибо.
17 янв 12, 12:30    [11916661]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Lelouch
Member

Откуда: Москва
Сообщений: 1879
Chek_Fedor
Не могу понять как выбрать все значения из таблицы удовлетворяющие условию. Конструкция
z_mainplan record_spec = ResourceWrapper.CurrentDomainContext.z_mainplans.FirstOrDefault(r => r.id_spec == 3);

находит первую запись у которой значение столбца "id_spec" равно 3. А мне нужно получить набор всех строк у которых id_spec=3.
Скажите это возможно?
Спасибо.


z_mainplan record_spec = ResourceWrapper.CurrentDomainContext.z_mainplans.Where(r => r.id_spec == 3).ToList();
17 янв 12, 14:01    [11917578]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Ругается "Неявное преобразование типа "System.Collections.Generic.List<TSU_Plan.Web.z_mainplan>" в "TSU_Plan.Web.z_mainplan" невозможно".
17 янв 12, 15:16    [11918397]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Извиняюсь проблема решена
 List<z_mainplan> record_spec = ResourceWrapper.CurrentDomainContext.z_mainplans.Where(r => r.id_spec == ID_spec).ToList();
17 янв 12, 15:44    [11918713]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Еще проблемка. Определил переменную как
public static ArrayList Plan_id_block = new ArrayList();

дальше записал туда
Plan_id_block.Add(record_spec.ToArray());

кастую
z_mainplan record = Plan_id_block[i] as z_mainplan;

но record всегда null при Plan_id_block[i] = z_mainplan:1 где 1 номер ID записи.
Все это проделал для того чтобы обратится к значениям из другой страницы. Может есть более простой способ
типа id_2=record.поле2.
Спасибо
17 янв 12, 18:11    [11920248]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Iber
Member

Откуда:
Сообщений: 277
при отладке на этой строке если остановится z_mainplan record = Plan_id_block[i] as z_mainplan;

Plan_id_block[i] не null чтоли?Оо
18 янв 12, 00:10    [11921754]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Спасибо часть получилось т.е. загнал значения ID'ишников в массив "arr"
 z_mainplan record = record_spec[i] as z_mainplan;
                                z_mainplan record_block = record as z_mainplan;
                                if (record != null)
                                {
                                    arr[i] = record_block.id_block;
                                {

получил к примеру: arr[0]=109 arr[1]=25
Теперь пытаюсь загрузить в таблицу нужные мне значения с ID =109 и 25 пока вынес все на первую попавшуюся кнопку
    private void Del_block_Click(object sender, RoutedEventArgs e)
        {
            for (int i = 0; i < 2; i++)
            {
                Parameter p = new Parameter();
                p.Value = OpenPlan.arr[i];
                p.ParameterName = "Idx";
                z_main_block_procDomainDataSource.QueryParameters.Add(p);
                z_main_block_procDomainDataSource.Load();
                z_main_block_procDomainDataSource.QueryParameters.Clear();
            }
        }

но ни фига не получается при такой конструкции у меня грузится только arr[1]=25 полагаю что дело в QueryParameters.Clear();
для справки z_main_block_procDomainDataSource это
<riaControls:DomainDataSource AutoLoad="True" d:DesignData="{d:DesignInstance my:z_main_block_proc_Result, CreateList=true}" 
                                      Height="0" Name="z_main_block_procDomainDataSource" 
                                      QueryName="Getz_main_block_procQuery" 
                                      DomainContext="{StaticResource DomainContext}" Width="0" Margin="0,0,651,40">
        </riaControls:DomainDataSource>

в DomainService

   public IQueryable<z_main_block_proc_Result> Getz_main_block_proc(int Idx)
        {
            return this.ObjectContext.z_main_block_proc(0).AsQueryable<z_main_block_proc_Result>().Where(r => r.indx ==Idx);
        }


Вопрос есть ли способ загрузить в GridControl значения у которых Idx=109 и 25 или передать
public IQueryable<z_main_block_proc_Result> Getz_main_block_proc(int Idx) вместо (int Idx) список или массив.
Спасибо
18 янв 12, 04:26    [11922107]     Ответить | Цитировать Сообщить модератору
 Re: Выборка всех значений удовлетворяющих условию  [new]
Chek_Fedor
Member

Откуда:
Сообщений: 2011
Пришлось модифицировать процедуру на MSSQL и все получилось
20 янв 12, 11:59    [11937895]     Ответить | Цитировать Сообщить модератору
Все форумы / WPF, Silverlight Ответить