如何将LINQ查询结果作为特定对象返回
public CountryTable GetSelectedEventInfo(string SelectedEventID)
{
return (CountryTable) this.context.Event.Where(
e => e.EventID.Equals(Convert.ToInt32(SelectedEventID)));
}
这是我的模特
public class CountryTable
{
public int EventID { get; set; }
public string Title { get; set; }
public DateTime Startdate { get; set; }
public DateTime EndDate { get; set; }
public string EventUrl { get; set; }
}
以下是我的数据库上下文
public DbSet<CountryTable> Event { get; set; }
以下是我要做的事情
public CountryTable GetSelectedEventInfo(string SelectedEventID)
{
return (CountryTable) this.context.Event.Where(
e => e.EventID.Equals(Convert.ToInt32(SelectedEventID)));
}
我需要查询结果返回CountryTable类型的对象
答案 0 :(得分:5)
您可以使用SingleOrDefault
方法:
public CountryTable GetSelectedEventInfo(string SelectedEventID)
{
int id = Convert.ToInt32(SelectedEventID);
return this.context.Event.SingleOrDefault(e => e.EventID == id);
}
请注意,如果在数据库中找不到匹配的记录,则此方法将返回null。