2013-03-14 200 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