2013-03-14 108 views
0

我有一个方法,将新项添加到EF表,然后查询表返回表的一个子集。它需要向调用者返回一组“行”,每行都是一组列。我不知道如何做到这一点。我有一些代码,但我认为这是错误的。我不想返回一行,我想返回零或多行。我不确定要使用什么DataType ... [qryCurrentTSApproval是一个EF对象,指SS中的一个小视图。 tblTimesheetEventlog也是一个EF对象,指的是底层表]返回一组对象从一个类

想法?

private qryCurrentTSApproval LogApprovalEvents(int TSID, int EventType) 
    { 
     using (CPASEntities ctx = new CPASEntities()) 
     { 
      tblTimesheetEventLog el = new tblTimesheetEventLog(); 
      el.TSID = TSID; 
      el.TSEventType = EventType; 
      el.TSEUserName = (string)Session["strShortUserName"]; 
      el.TSEventDateTime = DateTime.Now; 
      ctx.tblTimesheetEventLogs.AddObject(el); 
      ctx.AcceptAllChanges(); 

      var e = (from x in ctx.qryCurrentTSApprovals 
        where x.TSID == TSID 
        select x); 
      return (qryCurrentTSApproval)e; 
     } 
    } 

回答

0

你的方法的返回类型更改为qryCurrentTSApproval

private List<qryCurrentTSApproval> LogApprovalEvents(int TSID, int EventType) 
{ 
    using (CPASEntities ctx = new CPASEntities()) 
    { 
    // some other existing code here 

    var itemList = (from x in ctx.qryCurrentTSApprovals 
            where x.TSID == TSID 
                select x).ToList(); 
    return itemList; 
    } 
} 
+0

的集合正是我一直在试图去。谢谢。 – 2013-03-14 16:51:46

+0

@ JimS-Indy:不客气。很高兴我能帮上忙。 – Shyju 2013-03-14 16:53:53