Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск по нескольким таблицам 
:(
    Опции темы
Karta
Дата 19.5.2013, 10:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 4.6.2009

Репутация: нет
Всего: 0



Добрый день,
я начала разбираться с поиском и сделала простенький поиск по руководству:

http://www.asp.net/mvc/tutorials/get...vc-application

Все работает, но у меня вопрос, если, например, у меня будет 3 таблицы в бд которые будут содержать такие же названия столбцов и похожую информацию, как мне сделать поиск по 3 таблицам?

По одной таблицы контроллер для поиска будет примерно таким:
Код

public ViewResult Index( string searchString)
{
   
    var students = from s in db.Students
                   select s;
    if (!String.IsNullOrEmpty(searchString))
    {
        students = students.Where(s => s.LastName.ToUpper().Contains(searchString.ToUpper())
                               || s.FirstMidName.ToUpper().Contains(searchString.ToUpper()));
    }
 
    return View(students.ToList());
}


Представление
Код

@using (Html.BeginForm())
{
    <p>
        Find by name: @Html.TextBox("SearchString")  
        <input type="submit" value="Search" /></p>
}


А если у меня 3 таблицы например: Students, Students1, Students2, как дописать контроллер?

Спасибо 
PM MAIL   Вверх
jonie
Дата 20.6.2013, 10:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 3
Всего: 118



я бы сделал в базу view и искал бы по нему, вьюхе же может выглядеть как UNION таблиц.
Такое же можно сделать и средствами linq:
Код

var q = (from c In db.Students1
        select c.Name).Union(from e In db.Students2
        select e.Name);
var r = q.Where(x=>x.Name = "some");



--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Любитель
Mymik
mr.DUDA

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Любитель, Mymik, mr.DUDA.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка под ASP.NET | Следующая тема »


 




[ Время генерации скрипта: 0.0458 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.