Загрузка данных из БД на основе имени, переданного в Combobox - PullRequest
0 голосов
/ 10 октября 2018

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

У меня есть две сущности;service_catalog и услуги.У меня есть внешний ключ на сервисах, который имеет ссылку на service_catalog.Таким образом, идея состоит в том, что service_catalog имеет много сервисов.

Я пытаюсь получить список всех сервисов на основе имени service_catalog, переданного из выпадающего списка.Но я получаю нулевое исключение для переменной serviceList.Но когда я тестировал с окном сообщения, оно давало мне идентификатор, который я учил, что я мог использовать.Но я получаю ошибку.

Вот мой код.Буду признателен за любую помощь.

//Get catalog name
private service_catalog GetName(string sCatalogname)
{
    using (Model db = new Model())
    {
        return db.service_catalog.FirstOrDefault(s => s.name == Catalogname);
    }
}

//Load the services based on the service_catalog selected
private void comboBoxServices_SelectedIndexChanged(object sender, EventArgs e)
{
    service_catalog data = GetName(comboBoxServices.Text);
    List<service> serviceList;
    if (data != null)
    {
        serviceList = dbHelper.services.Where(s =>s.service_catalog_id == data.service_catalog_id).ToList();
        dataGridViewServices.DataSource = serviceList;

    }
}

Ошибка: {"Ссылка на объект не установлена ​​для экземпляра объекта."} Эта строка:

serviceList = dbHelper.services.Where(s => s.service_catalog_id == data.service_catalog_id).ToList();

Я ценю любую помощь.

РЕДАКТИРОВАТЬ
из комментария к OP

счетчик объектов serviceList равен 0, а объект данных показывает

"{System.Data.Entity.DynamicProxies.service_catalog_BF9EC14C144A9AC84B6F0CB43564996B60E8B * FCB2C8C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5B5

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...