2012-08-17 52 views
0

我有這種方法,首先它從數據庫(連接表)獲取所有數據,然後用搜索屬性和搜索關鍵字過濾結果,如下所示。一切都很好,直到我添加開關...與LINQ的情況下,我得到錯誤「元數據.dll無法找到」。顯然,錯誤來自於它,但我不知道什麼是錯誤,對於LINQ我是如此的陌生。找不到LINQ的元數據文件'.dll'

public IPagedList<dynamic> Execute(int pageIndex, int pageSize, string searchProperty, string searchKeyword) 
{ 
    IQueryable<dynamic> dokumente; 
    dokumente = session.Query<Dokument>().Select(dokument => 
       new {Beschreibung = dokument.Beschreibung,        
         Link = dokument.Link, 
         Dokumenttyp = dokument.Dokumenttyp.Bezeichnung,        
        }).ToList().AsQueryable(); 

    if (!string.IsNullOrEmpty(searchProperty)) 
    { 
     switch (searchProperty) 
     { 
      case "Beschreibung": 
       dokumente = dokumente.Where(x => x.Beschreibung == searchKeyword); 
       break; 
      case "Link": 
       dokumente = dokumente.Where(x => x.Link == searchKeyword); 
       break; 
      case "Dokumenttyp": 
       dokumente = dokumente.Where(x => x.Dokumenttyp == searchKeyword); 
       break;     
     } 
    }   
    return new PagedList<dynamic>(dokumente, pageIndex, pageSize); 
} 

回答

2

這是不是在你的代碼中的錯誤,它與您的包裝和配置做。嘗試重新啓動Visual Studio,或者如果一切都失敗,請將您的解決方案重新組合。

參見:現在Metadata file '...\Release\project.dll' could not be found in Visual Studio

+0

嗨,DLL錯誤消失了,另一個錯誤出現有關x.Beschreibung和其他X.Y:「表達式樹不能包含一個動態的過程」。 – Ragnarsson 2012-08-17 12:17:24

+0

這是一個不同的問題,您可以打開一個新的問題。 – 2013-03-06 12:30:43