在Sharepoint 2013中,当尝试打开内容搜索Web部件的查询生成器窗口时,会收到一个空窗口,显示“发生了未知错误”。
在挖掘ULS日志后,一行会将问题报告为:
Exception in Query Builder OnLoad:
System.ArgumentException: An entry with the same key already exists.
有什么问题?
答案 0 :(得分:2)
如msdn中所述,由于父网站和子网站中存在相同的命名内容类型,因此会发生这种情况。
为了轻松找到重复项,我使用Sharepoint Designer > Content Types
并首先查找相同的命名CT,然后查找子网站。
找到有问题的并重命名/删除后,问题就解决了。
答案 1 :(得分:1)
经常回答此问题的方法是确保尝试使用查询构建器的用户是搜索服务应用程序的管理员。
答案 2 :(得分:0)
我也有同样的问题,并且绝对不会归因于重复的内容类型。
我已经设置了一个服务应用程序服务器场,用于抓取多个资源。该服务器场唯一的Web应用程序是Central Admin。我尝试重建搜索服务应用程序无济于事。在尝试跨服务器场访问已发布服务时,我发现端点出现故障。紧接着是查询生成器OnLoad异常。
Query Builder OnLoad中的异常:
Query Builder OnLoad中的异常:System.ServiceModel.FaultException`1 [System.ServiceModel.ExceptionDetail]:尝试执行未经授权的操作。 (故障详细信息等于异常详细信息,可能由IncludeExceptionDetailInFaults = true创建,其值为:System.UnauthrozedException:尝试执行未经授权的操作。在SyncInvokeGetRankingModels的Microsoft.Office.Server.Search.Administration.Ranking.GetRankingModels() ......等等等。
"未经授权的"让我觉得我可能在服务应用程序的某个地方错过了权限,但在检查之后,一切都按顺序进行。
答案 3 :(得分:0)
我有同样的错误(更具体地说,在它提到的ULS中找不到列表,没有特定的列表名称,只是那个),结果证明是当前的语言设置。我把它改成了英文,它又开始工作了。构建查询后,将语言更改回来,一切都很好。不是那样的事情,而是你去的地方。