2

BDC 模型:
我的 BDC 模型的实体有一个名为 Color 的属性。TypeName 被指定为 System.String[]。

<TypeDescriptor Name="Color" TypeName="System.String[]">
  <Properties>
    <Property Name="RequiredInForms" Type="System.Boolean">false</Property>
  </Properties>
</TypeDescriptor>

数据库:
在我的数据库(我的 BDC 内容源)中,我添加了如下列值:

;#Blue;#Green;#Yellow;#

搜索架构
我创建了一个新的托管属性并启用了多个值(并且也是可优化的 - 活动的、可查询的、可检索的、安全的)。

搜索结果
通过搜索工作过滤特定颜色。示例:RsExpAdvWorksProductColor:"blue"

搜索细化
但是我不能细化颜色。在我的托管财产上添加精炼器显示如下:

Color
;#Blue;#Green;#Yellow;#  
;#Green;#Yellow;#  
;#Red;#Green;#Yellow;#Blue;#Black;#Cyan;#

显然,单个值不被视为 - “特殊分隔符”分隔值的整个“字符串”被显示为细化标准。

有什么提示吗?

2015-03-20 更新:我仔细查看了内置的多选列。在搜索结果中,它们以“Value1;#Value2;#”等形式返回。基本上有一个尾随 Red;#Blue;#分隔符 - 没有前导 ;#Red;#Blue;#分隔符。很遗憾没有解决我的问题。

4

1 回答 1

1

Update 2015-03-20: Surprise surprise. It is in fact "working as designed" (like so many things in SharePoint :P). What I am looking for has to be dealt with separately. It behaves exactly the same with built-in multi choice fields so there is nothing wrong with my BDC/Search integration.

Regarding the refiner, have a look at the following links...

于 2015-03-20T09:14:39.690 回答