0

我有这种方法,首先,它从数据库(连接表)中获取所有数据,然后使用搜索属性和搜索关键字过滤结果,如下所示。在我使用 LINQ 添加 switch ... case 之前,一切都很好,我收到错误“找不到元数据 .dll”。显然,错误来自它,但我不知道错误是什么,我对 LINQ 很陌生。

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);
}
4

1 回答 1

2

这不是您的代码中的错误,它与您的打包和配置有关。尝试重新启动 Visual Studio,或者如果所有其他方法都失败,请重新组合您的解决方案。

另请参阅:在 Visual Studio 中找不到元数据文件“...\Release\project.dll”

于 2012-08-17T12:05:23.377 回答