Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将不同的值从数据库加载到列表中<&燃气轮机;_C#_Database_Entity Framework_List_Foreach - Fatal编程技术网

C# 将不同的值从数据库加载到列表中<&燃气轮机;

C# 将不同的值从数据库加载到列表中<&燃气轮机;,c#,database,entity-framework,list,foreach,C#,Database,Entity Framework,List,Foreach,我用一个事件的外键(=体育纪律)记录了一堂POCO课。 记录可以链接到一个项目,但一个项目可以有多个记录(世界记录、奥运会记录等)。 现在,我想打印数据库中的每个事件(+附加记录),并在索引视图中使用for-each循环 但由于表记录没有List属性,我必须从记录表中创建一个本地(不同的)事件列表,这就是我的问题 更多信息,这里是我的记录模型 public class Record { [Key] public int RecordId { get; set; }

我用一个事件的外键(=体育纪律)记录了一堂POCO课。 记录可以链接到一个项目,但一个项目可以有多个记录(世界记录、奥运会记录等)。 现在,我想打印数据库中的每个事件(+附加记录),并在索引视图中使用for-each循环

但由于表记录没有List属性,我必须从记录表中创建一个本地(不同的)事件列表,这就是我的问题

更多信息,这里是我的记录模型

    public class Record
{
    [Key]
    public int RecordId { get; set; }
    public string ResultName { get; set; }
    public int ResultAge { get; set; }
    public double ResultPrestation { get; set; }
    public System.DateTime ResultDate { get; set; }
    public string ResultPlace { get; set; }
    public int CountryId { get; set; }  
    [ForeignKey("CountryId")]
    public virtual Country Country {get; set;}
    public int EventId { get; set; }
    [ForeignKey("EventId")]
    public virtual Event Event { get; set; }
}
以及事件模型

    public class Event
{
    [Key]
    public int EventId { get; set; }
    public String Sport { get; set; }
    public String Discipline { get; set; }
    public Boolean SchoolcupEvent { get; set; }
    public List<Record> Records { get; set; }
}
公共类事件
{
[关键]
public int EventId{get;set;}
公共字符串Sport{get;set;}
公共字符串规则{get;set;}
公共事件{get;set;}
公共列表记录{get;set;}
}
我写了一篇小文章,最后列出了一个记录存在的事件列表,但这不是一个明确的列表,这正是我需要的

        List<Event> events = new List<Event>();
        foreach(var item in db.Records)
        {               
            Event e = db.Events.Find(item.EventId);
            events.Add(e);
        }
List events=new List();
foreach(数据库记录中的变量项)
{               
Event e=db.Events.Find(item.EventId);
添加(e);
}
我希望有人能帮助我


关于

应该起作用

应该起作用

如何将事件放入集合中,该集合将删除重复的事件(如果有),然后将集合转换回列表

var events = db.Records.Distinct().ToList();
Set<Event> eventSet = new TreeSet<Event>();
foreach(var item in db.Records)
{               
        Event e = db.Events.Find(item.EventId);
        eventSet.Add(e);
}
List<Event> eventList = new ArrayList<Event>();
if(eventSet != null && eventSet.size() > 0)
{
        eventList.add(eventSet);
}
Set eventSet=new TreeSet();
foreach(数据库记录中的变量项)
{               
Event e=db.Events.Find(item.EventId);
添加(e);
}
List eventList=new ArrayList();
if(eventSet!=null&&eventSet.size()>0)
{
添加(eventSet);
}

如何将事件放入集合中,以删除重复的事件(如果有),然后将集合转换回列表

Set<Event> eventSet = new TreeSet<Event>();
foreach(var item in db.Records)
{               
        Event e = db.Events.Find(item.EventId);
        eventSet.Add(e);
}
List<Event> eventList = new ArrayList<Event>();
if(eventSet != null && eventSet.size() > 0)
{
        eventList.add(eventSet);
}
Set eventSet=new TreeSet();
foreach(数据库记录中的变量项)
{               
Event e=db.Events.Find(item.EventId);
添加(e);
}
List eventList=new ArrayList();
if(eventSet!=null&&eventSet.size()>0)
{
添加(eventSet);
}