2014-03-30 73 views
0

不是所有的代碼路徑都返回一個值,怎麼可能修復我的代碼?不是所有的代碼路徑都返回一個值,

class CustomerSummaries {SqlConnection conn = new SqlConnection();

public IEnumerable<T> GetAll() 
    { 
     try 
     { 
      SqlCommand cmd = new SqlCommand("GetAll", conn); 
      cmd.CommandType = CommandType.StoredProcedure; 
      SqlDataAdapter da = new SqlDataAdapter(cmd); 
      SqlDataReader sdr; 
      conn.Open(); 
      sdr = cmd.ExecuteReader(); 
      while (sdr.Read()) 
      { 
       if (sdr.IsDBNull(sdr.GetOrdinal("ContactName")) != true) 
       { 
        sdr["ContactName"].ToString(); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 
      throw; 
      //lblErrorMsg.Visible = true; 
      //lblErrorMsg.Text += "<br><b>getProjectLead_Error: </b> " + ex.Message; 
     } 
     finally 
     { 
      conn.Close(); 
     } 
    } 
} 

回答

2

你的函數聲明說,你要返回IEnumerable<T>,但沒有return聲明。並且,T不是數據類型。我想你會遇到一段糟糕的時光。

我還注意到,sdr["ContactName"].ToString();並沒有真正做任何事情 - 它不修改列值,因爲它是一個函數,而不是一個方法,而且你沒有將該函數的結果賦值給一個變量更進一步的東西。

+0

問題指出,我應該在做什麼? – bthumber

+0

我不能告訴你你應該做什麼,只有你知道。提出一個新問題,說明你想完成什麼,並提供足夠的代碼,以便我們能夠理解上下文。你想從你的函數返回什麼樣的列表? – ErikE

+0

好點! IEnumerable這裏是我的控制器:public class CustomerSummaryController:Controller { // // GET:/ CustomerSummary/ private CustomerSummaries _customerSummaries = new CustomerSummaries(); public ViewResult Index() IEnumerable summaries = _customerSummaries.GetAll(); return查看(摘要); } } – bthumber

相關問題