2014-07-07 65 views
0

我使用他的代碼爲實體框架的執行SQL query原始的SQL查詢:執行使用實體框架

using (var db = new VSServicesEntities()) 
      {     
       const string selectCmd = @"if exists (Select top 1 IsUserOn From ServiceMembers Where [email protected] and [email protected]) 
          Select isnull(IsUserOn,0) IsON 
          From ServiceMembers Where [email protected] and [email protected] 
          else 
          Select Null IsON"; 
       var data = db.ServiceMembers.SqlQuery(selectCmd, number, serviceCode).ToList(); 
       if (data.Count()>1) 
       { 

        //How to acccess value of returned column named IsON 
       } 

,我想在通過執行查詢,此列的名稱返回的列的,如果塊if (data.Count()>1)訪問值是IsON,我該如何訪問它?

回答

1

如果您正在等待實體列表,則需要使用.First(),.Single()或類似函數來確定您想要的實體。

從那裏它應該是一個簡單的案例,編寫var result = data.First().IsON;以從該專欄或類似的東西獲得您的價值。這是我這樣做的方式,如果實體未知,或者表中的列未知,您將得到一個異常。但是從你提供的信息來看,這不應該是一個問題。