2014-04-01 55 views
3

鑄造,當我用, 現在,我想下面的VAR性能(配置)轉換爲這是在DB類的模型類,這是從MVC項目產生(在方法的ActionResult指數)以下是從(config類)生成,我應該怎麼做?問題從DB

var config = from m in db.Config 
      select m; 

我嘗試這樣,但它不工作

Config config2 = (Config)config; 

Config config = from m in db.Config 
       select m; 

的錯誤是:

Error 1 Cannot implicitly convert type 'System.Linq.IQueryable<Admin.Config.Admin>' to 'AdminS.Config.Admin'. An explicit conversion exists (are you missing a cast?) 

回答

6
var config = from m in db.Config 
      select m; 

返回IQueryable<Admin.Config.Admin>不是Admin類。你實際上有一個集合,你可以使用.FirstOrDefault()這將返回第一個對象(或null)。

Config config2; 
Config firstConfigItem = config.FirstOrDefault(); 

if (firstConfigItem != null) { 
    config2 = firstConfigItem; 
} 

注意:您不需要從Config轉換爲Config因爲這樣做沒有意義的,你已經處理正確的類型。編譯器最初抱怨IQueryable<Config>Config

要獲取可以調用.ToList()的對象列表,您必須迭代集合中的每個對象並相應地指定它,目前您只有1個變量。

+0

假設我想獲取對象列表,我應該怎麼做? –

+0

@JeanTehhe:然後調用'ToList',你會得到一個'List '。 –