2016-07-20 22 views
2

Мой вопрос задавали раньше, но я не могу понять это даже со всеми предыдущими сообщениями. Ясно, что я не понимаю его правильно.Как реализовать IEnumerable в моем конкретном случае?

У меня была Visual Studio генерировать ADO NET Entity Framework Model, сначала код из базы данных. В базе данных у меня есть таблица под названием «Готово» (чтобы всякий возможный финал в игру, просто для уточнения). Все это прекрасно работает. Теперь мне нужно реализовать IEnumerable, чтобы иметь возможность проходить через него. До сих пор я все понимаю. Кажется, я просто не могу это сделать. Может быть, кто-то может пролить свет на него, поэтому я пойму раз и навсегда.

Visual Studio создала два класса;

Checkoutlist.cs:

namespace Bull.Models 
{ 
using System; 
using System.Data.Entity; 
using System.ComponentModel.DataAnnotations.Schema; 
using System.Linq; 
using System.Collections; 

public partial class CheckoutList : DbContext, IEnumerable 
{ 
    public CheckoutList() 
     : base("name=DatastoreConnection") 
    { 
    } 

    public virtual DbSet<Finish> Finishes { get; set; } 


    protected override void OnModelCreating(DbModelBuilder modelBuilder) 
    { 
     modelBuilder.Entity<Finish>() 
      .Property(e => e.First) 
      .IsFixedLength(); 

     modelBuilder.Entity<Finish>() 
      .Property(e => e.Second) 
      .IsFixedLength(); 

     modelBuilder.Entity<Finish>() 
      .Property(e => e.Third) 
      .IsFixedLength(); 
    } 
} 
} 

И Finish.cs:

namespace Bull.Models 
{ 
using System; 
using System.Collections.Generic; 
using System.ComponentModel.DataAnnotations; 
using System.ComponentModel.DataAnnotations.Schema; 
using System.Data.Entity.Spatial; 

public partial class Finish 
{ 
    public int Id { get; set; } 

    public int Total { get; set; } 

    [Required] 
    [StringLength(10)] 
    public string First { get; set; } 

    [Required] 
    [StringLength(10)] 
    public string Second { get; set; } 

    [Required] 
    [StringLength(10)] 
    public string Third { get; set; } 
} 
} 

Таким образом, вопрос; как я могу реализовать IEnumerable в моем случае? Ваша помощь (и, возможно, объяснение) очень ценится.

+2

«Код первого из базы данных» Кодекс Первый подход, который генерирует базу данных из кодекса, но не код из базы данных – Marusyk

+3

я не понимаю, 'Finishes' уже реализует IEnumerable' '. Ваш 'CheckoutList' - это' DbContext', который не должен реализовывать 'IEnumerable'. –

+0

Спасибо MegaTron. Так что вы говорите, я использую неправильный метод для начала, и это моя проблема? –

ответ

2

Попробуйте использовать этот метод:

public IEnumerable<Finish> Get() 
{ 
    var query = base.Set<Finish>(); 
    return query.ToList(); 
} 
+1

Спасибо @MegaTron, это именно то, что я искал! –

+1

Рад помочь – Marusyk

Смежные вопросы