Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.73/26: Рейтинг темы: голосов - 26, средняя оценка - 4.73
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049

LINQ значение ячейки

15.05.2011, 10:54. Показов 5250. Ответов 22
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана таблица и есть соответствующий LINQ запрос

Дана таблица с машинами. Мне необходимо по условию "Название машина" определить его ID
Дана таблица определить его можно по следующиму LINQ запросу

C#
1
2
3
4
IEnumerable<EmployeeDetails> matches = from employee in table
where employee="Ауди"
select employee;
string querySQL = matches.ToString();
Но я не знаю как это значение присвоить к типу int и использовать его для своих нужд.
Если не понятно объяснил задавайте вопросы
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.05.2011, 10:54
Ответы с готовыми решениями:

Linq или не Linq. Linq медленней стандартных методов?
Есть у нас два массива, нужно найти совпадения в первом из второго. Два варианта реализации, первый костылем, второй с linq, но скорость...

Получить значение из ячейки
заполняю таблицу (datagridview) в ручную и надо получить значения из ячеек код string ssss =...

Получить значение ячейки Excel
День добрый! Стоит задача: Есть таблица exell, которая заполнена значениями. Нужно написать программу на C#, которая будет открывать...

22
15 / 15 / 6
Регистрация: 28.11.2010
Сообщений: 40
15.05.2011, 12:42
Если я правильно понял что ты хочешь, то...

твой запрос возвращает коллекцию, для того, чтобы он возвращал 1 значение можешь поставить
(from employee.....).First(); или же .Single(), в первом случае будет возврщать первое значение, а во втором, если у тебя больше 1 объекта, подходящего под условие, то будет генериться эксепшн.

Как вариант, да и так будет вернее всего, банально перебрать коллекцию в цикле.
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
15.05.2011, 12:50  [ТС]
с фромом то понятное дело.
НО мне нужна не колекция а ЦИФРА являющейся ID марок машин
точнее мне надо чтобы это значение было присвоено переменной int her;

Я хочу получить число из ячейки и присвоить его переменной типа int
0
15 / 15 / 6
Регистрация: 28.11.2010
Сообщений: 40
15.05.2011, 13:09
Ну, откуда я знаю, что у тебя там за поля/свойтва:
предположу что так, если что - переделаете немного.


C#
1
2
3
4
5
6
 var ids=   from e in table where e.name == "Audi" select e.id;
 
            foreach (var id in ids)
            {
                //blablabla
            }
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
15.05.2011, 13:53  [ТС]
bla bla bla - а тут поподробнее. мне ненадо ничего перечислять я знаю что Ауди у меня одна и соответственно id у меня один.
Если надо bla bla bla распиши пожалуйста.
0
 Аватар для Konctantin
970 / 773 / 171
Регистрация: 12.04.2009
Сообщений: 1,700
15.05.2011, 15:22
мда, вы так ничего и не поняли... хоть у вас 1 машина, хоть 10, у вас вернется результат типа IEnumerable<Т>, тобиш коллекция, образно говоря массив. Так вот, в этом массиве будут записи (не важно сколько, 1 или 10) важно то, что к ним надо обратится, и тут собственно вам пригодится перебор элементов, или же обращение к элементу[0] этого массива, сделать можно это несколькими способами:
1) обращение по индексу
C#
1
var car = ids[0];
2) используя LINQ
C#
1
var ids= (from e in table where e.name == "Audi" select e.id).First();
3) Используя простой перебор
C#
1
2
3
4
5
6
7
 
var ids=   from e in table where e.name == "Audi" select e.id;
    foreach (var id in ids)
    {
        var elem = id;
        break;
    }
Но есть подводные камни, для способов 1 и 2, в том случае, если результат будет пустой

поэтому делайте проверку, как-то так:
C#
1
2
3
var ids= from e in table where e.name == "Audi" select e.id;
if (ids.Count > 0)
    var car = ids[0];
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
15.05.2011, 15:34  [ТС]
Был бы ты женщиной - расцелавал бы. Теперь я понял что такое коллекция ))) И для чего эти циклы )))
Ладно как протестирую на своём примере сразу же отпишу и точно успею надоесть
0
16.05.2011, 00:10

Не по теме:

Цитата Сообщение от ayrat_net Посмотреть сообщение
Был бы ты женщиной - расцелавал бы
А ты будь мужиком, проставляйся :drink:
:D

1
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
16.05.2011, 10:18
Как по мне - лучше всего делать так
C#
1
2
3
4
5
6
            int id = (from me in table where me.name == "Audi" select me.id).SingleOrDefault<int>();
            if (id != 0) // если ничего нет в коллекции вернется Default<int> , т.е. 0
            {
                //тут чтото делаем с машинкой с id типа int:)
                MessageBox.Show(id.ToString());
            }
Добавлено через 9 минут
Хотя наверное - правильнее всего будет сделать так
C#
1
2
3
4
5
6
            mesh m = (from me in table where me.name == "Audi1" select me).SingleOrDefault<mesh>();
            if (m != null)
            {
                //тут чтото делаем с машинкой с id типа int:)
                MessageBox.Show(m.id.ToString());
            }
где mesh - это элемент твоей коллекции.
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
16.05.2011, 20:23  [ТС]
Winsor,
Что такое mesh

Добавлено через 1 минуту
nio,
Приезжайте г.Казань ул.Черноморская д.11 кв.50

Добавлено через 1 час 13 минут
Проблема следующая. Как результат выдаётся 0, а я точно знаю, что у меня есть Audi и у него есть id!=0 )))
0
16.05.2011, 21:01

Не по теме:

Цитата Сообщение от ayrat_net Посмотреть сообщение
nio, приезжайте г.Казань
А мне то чего ехать? Ты ж не меня целовать собирался :D

1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
16.05.2011, 21:06  [ТС]
ты же про проставляться говорил. Если тебя больше поцелуи интересуют, то я тебя выпишу из Москвы парочку парней, благо щас можно с помощью WebMoney расплачиваться )
0
16.05.2011, 21:12

Не по теме:

Цитата Сообщение от ayrat_net Посмотреть сообщение
ты же про проставляться говорил
ну правильно, не я ж тебе помогал и на халяву не напрашиваюсь, просто хотел сказать, что проставляться нужно тому, кто помогал :)
Цитата Сообщение от ayrat_net Посмотреть сообщение
я тебя выпишу из Москвы парочку парней
не утруждайся, парни меня не интересуют ни столичные, ни какие другие. Мне и нашей женской половины вполне хватает, справляться не успеваю :D

1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
16.05.2011, 21:17  [ТС]
nio,
Я же сказал - ПРИЕЗЖАЙТЕ. Значит все те кто хочет )
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
16.05.2011, 21:25

Не по теме:

Цитата Сообщение от ayrat_net Посмотреть сообщение
Я же сказал - ПРИЕЗЖАЙТЕ. Значит все те кто хочет
Во это уже правильнее.... :)



На этом считаю следует оффтоп прекратить
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
16.05.2011, 21:29  [ТС]
))) Тогда ответь мне на вопрос. Почему мне выдаёт 0 в результате, если у меня есть Ауди )))
0
 Аватар для nio
6050 / 3460 / 336
Регистрация: 14.06.2009
Сообщений: 8,136
Записей в блоге: 2
16.05.2011, 21:56
Цитата Сообщение от ayrat_net Посмотреть сообщение
Почему мне выдаёт 0 в результате, если у меня есть Ауди
Тут 2 варианта:
- источник на момент выброрки пуст (проверь отладчиком)
- неправильно составлен запрос
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
16.05.2011, 22:12  [ТС]
Я понял где ошибка. Теперь нужно понять как решить её. Ладно обращусь по этому в следующей теме.
0
334 / 270 / 18
Регистрация: 19.01.2011
Сообщений: 597
17.05.2011, 09:18
Цитата Сообщение от ayrat_net Посмотреть сообщение
Проблема следующая. Как результат выдаётся 0, а я точно знаю, что у меня есть Audi и у него есть id!=0 )))
Используй второй вариант, с объектом, и проверкой на null. mesh - это объект коллекции. у тебя он может быть по другому назван, но принцып тот же.

Добавлено через 44 секунды
Цитата Сообщение от nio Посмотреть сообщение
Тут 2 варианта:
- источник на момент выброрки пуст (проверь отладчиком)
- неправильно составлен запрос
запрос составлен правильно, проверил, ну правда объект упрощенный, но сути сие не меняет.
1
 Аватар для ayrat_net
84 / 84 / 12
Регистрация: 12.01.2011
Сообщений: 1,049
17.05.2011, 09:48  [ТС]
Всё вроде работает, но теперь возникает следующий вопрос.
Скажите пожалуйста, что в этом запросе не так, если ошибок не выдаёт, но и результата не выдаёт?

C#
1
2
3
4
5
        realestateDataContext redi = new realestateDataContext();
        var gurik = (from he in redi.MSTStreets
                     where he.NameStreet.StartsWith(prefixText) && he.IdCity == herD
                     select he.NameStreet).Distinct();
        return gurik.Take(count).ToArray();
Где herD - статичный элемент
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.05.2011, 09:48
Помогаю со студенческими работами здесь

Получить значение ячейки Excel
Здравствуйте. Как можно получить значение ячейки таблицы Excel-ой в которой находится дата. Добавлено через 2 часа 46 минут ...

Считать значение из ячейки таблицы Excel
Как например в int x записать значение из ячейки таблицы эксель файла... ? { //Создаём приложение. ...

Получить значение ячейки из таблицы и присвоить это значение в другую
Привет всем. Мне необходимо получить значение ячейки из таблицы и присвоить это значение в другую. На форме имеются dataset,...

LINQ to Interbase/Firebird и вообще LINQ to...
Возникла вот надобность работы с СУБД Interbase. Очень хочется пользоваться удобными средствами LINQ. В Сети нашелся ADO.NET provider for...

Значение из ячейки в Label
Как вывести значение из определённой ячейки datagridview в Label, чтоб выводились данные именно со строки, на которой стоит фокус, т.е....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru