2015-12-28 4 views
1

Я хочу, чтобы отправить список имен, содержащихся в базе данных с помощью asp.netПолучить список из объекта в базе данных

Это мои два объекта:

public class Shop 
{ 
    public int ID { get; set; } 
    public string Country { get; set; } 
    public List<Item> Items{ get; set; } 
} 

public class Item 
{ 
    public int ID { get; set; } 
    public string Name { get; set; } 
} 

Я хочу, чтобы установить контроллер Садись в чтобы получить список элементов. я сделал что-то вроде этого:

public IEnumerable<Item> Get(int id) 
    { 

     var items= new List<Item>(); 
     var shop= new Shop(); 

     using (var systemDB = new ShopsDB()) 
     { 
          it = systemDB.Shops.Where(s => s.ID == id).FirstOrDefault<Shop>(); 
          items = it.Items; 
     } 

      return items; 

    } 

Это возвращение <ArrayOfItem i:nil="true"/>. Я хочу, чтобы получить полный список предметов для одного магазина (например, магазина с ID = 1)

+0

Вместо первого или по умолчанию использовать ToList(); – KhawajaAtteeq

+0

, потому что вы вызываете только 1 не список, ToList(); отправит вам полный список объектов – KhawajaAtteeq

+0

Спасибо за ваш ответ! Мне нужно вернуть список предметов, содержащихся в магазине (например, с ID = 1), а не список магазинов;) – Daniele

ответ

0

Я решил изменяющий Item объект:

public class Shop 
{ 
    public int ID { get; set; } 
    public string Country { get; set; } 
    public List<Item> Items{ get; set; } 
} 

public class Item 
{ 
    public int ID { get; set; } 
    public string Name { get; set; } 
    public int ShopID { get; set; } 
} 

И задать запрос, чтобы выбрать ShopID

0

Это вернет вам список

using (var systemDB = new ShopsDB()) 
    { 
         lab = systemDB.Shops.Where(s => s.ID == id).ToList(); 
         items = lab.Items; 
    } 
Смежные вопросы