0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 6
1

Плучение данных из БД, с использованием функции поиска (LINQ)

06.02.2014, 23:59. Показов 824. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день !
Подскажите пожалуйста.

есть таблица RentCar-dbo.TypeCars

---------------------------------------------------------------
CarID Manufacture Model Year GearBox

1 BMW X5 2010 False
2 BMW 520 2007 False
4 Audi A5 2011 True
5 Mazda 323 2003 True
---------------------------------------------------------------

В проекте MVC следующая функция :

-----------------------------------------------------------------
C#
1
2
3
4
5
        public List<TypeCar> SearchCar(TypeCar car)
        {
            return DB.TypeCars.Where(p => p.Manufacture == car.Manufacture || p.Model == car.Model
                || p.Year == car.Year || p.Gearbox == car.Gearbox).ToList();
        }
------------------------------------------------------------------

при выполнении поиска( через Controller > View вношу через форму данные) например выставляю
только коробку автомат (значение True).
Gearbox = True.
Выдаёт правильно новую таблицу.
----------------------------------------
Manufacture Model Gearbox
Audi A5 V
Mazda 323 V
---------------------------------------
при внесении например :
Type Car
Manufacture = BMW
Model = 520
Year = 2011
Gearbox = False

уже выдаёт не нужное значение
---------------------------------------
Manufacture Model Gearbox
BMW X5 -
BMW 520 -
---------------------------------------
Я не очень силён в функциях LINQ, но в данной ситуации уже нужно идти этим путём.
Заранее спасибо за помощь !!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2014, 23:59
Ответы с готовыми решениями:

Составьте программу поиска меньшего из трех чисел с использованием подпрограммы-функции поиска из двух.
Помогите решить задачу, и составить для нее блок-схему. Условие такое: Составьте программу...

Сбор данных с использованием LINQ
Привет всем. Кто может подсказать в чем косяк кода. Мне необходимо чтобы OUTName выдал сразу все...

Добавление объекта в базу данных с использованием Linq
Доброго времени суток. public override void Add(UserEntity entity) { ...

Реализовать алгоритм поиска заданного слова в исходном тексте с использованием хеш-функции
Реализовать алгоритм поиска заданного слова в исходном тексте с использованием хеш-функции. ...

2
480 / 253 / 51
Регистрация: 30.06.2010
Сообщений: 651
07.02.2014, 11:04 2
Знак || означает "или" - т.е. или у записи совпадает производитель или модель или год или коробка. В данном случае совпадает производитель и запись подходит.
Тут всё зависит от того, как Вам надо чтобы искалось - по точным совпадениям всех данных, или при совпадении минимум одного введённого критерия. Если первое, то все || надо заменить на && ("и") если же второе - так и оставить. Можно сделать оба метода и в интерфейсе сделать переключалочку (совпадение по всем или хотя бы одному), по указанию которой и использовать соотв метод.
1
0 / 0 / 0
Регистрация: 28.06.2013
Сообщений: 6
07.02.2014, 12:29  [ТС] 3
pHOMM спасибо за ответ.

Нужно чтоб и по точным совпадением (всех введённых строк) или же двух строк. Или одной.
Если ввёл 2007 год, так чтоб выдал только те позиции где машина/ы только 2007 года, а мне выдаёт и "BMW 520 2007 False" и "BMW X5 2010 False".

Про && я понимаю, но тогда нужно вводить точные данные во все поля, а интересует и по одному или двум полям тоже.
0
07.02.2014, 12:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.02.2014, 12:29
Помогаю со студенческими работами здесь

Составьте программу поиска наибольшего из четырех чисел с использованием подпрограммы поиска большего из двух
Задача: &quot;Составьте программу поиска наибольшего из четырех чисел с использованием подпрограммы...

Нахождение большего из 4 чисел a, b, c, d с использованием функции поиска большего из двух
Составить программу нахождения большего из 4 чисел a,b,c,d с использованием функции поиска...

Составить программу нахождения большего из 4 чисел a,b,c,d с использованием функции поиска большего из двух.
Составить программу нахождения большего из 4 чисел a,b,c,d с использованием функции поиска большего...

Запрос с использованием LINQ в С#
Доброго времени суток, уважаемые знатоки! При работе в С# возникла следующая проблема - не...

Переписать с использованием Linq
Есть класс public class RegionsTable { public string region { get; set; } ...

LINQ запрос для поиска вхождений строки
Вечер добрый, такой вопрос, как сформулировать LINQ запрос, что бы он выдал все результаты в...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru