我需要将Outlook连接到外部列表,并且必须将其内容类型映射到Office项目类型,但遗憾的是我无法在SPD2013中看到它。可能是因为BDC模型使用OData,它在SPD2013(my question about it)中的支持有限。
那么,是否可以在不使用SharePoint Designer的情况下将外部内容类型映射到Office项类型?如果是这样,我该怎么做?
提前谢谢。
PS:SharePoint 2013 RTM。
答案 0 :(得分:0)
乌拉! 经过三天不成功的谷歌搜索,并在任何地方问这个问题:-)我试图自己调查,最后,我找到了办法!
看起来很容易手工绘制它。为此,您必须在BDC模型文件中进行2次更改(扩展名为.bdcm的xml):
将具有Office项类型名称的属性添加到实体
<Entities>
<Entity Name="AbsenceCalendar" DefaultDisplayName="AbsenceCalendar" Namespace="MyNameSpace" Version="1.0.0.0" EstimatedInstanceCount="2000">
<Properties>
<Property Name="OutlookItemType" Type="System.String">Appointment</Property>
...
</Properties>
...
将必要字段映射到Office项目类型。例如,对于约会Office项目类型的必填字段,它可能看起来像
<Method Name="ReadSpecificAbsenceCalendarEntity" DefaultDisplayName="Read Specific AbsenceCalendarEntity" IsStatic="false">
......
<Parameter Name="@AbsenceCalendarEntity" Direction="Return">
<TypeDescriptor Name="AbsenceCalendarEntity" DefaultDisplayName="AbsenceCalendarEntity" TypeName="Microsoft.BusinessData.Runtime.DynamicType">
<TypeDescriptors>
<TypeDescriptor Name="Title" DefaultDisplayName="Title" TypeName="System.String">
<Properties>
<Property Name="OfficeProperty" Type="System.String">Subject</Property>
</Properties>
</TypeDescriptor>
<TypeDescriptor Name="StartDate" DefaultDisplayName="StartDate" TypeName="System.DateTime">
<Properties>
<Property Name="OfficeProperty" Type="System.String">Start</Property>
</Properties>
</TypeDescriptor>
<TypeDescriptor Name="EndDate" DefaultDisplayName="EndDate" TypeName="System.DateTime">
<Properties>
<Property Name="OfficeProperty" Type="System.String">End</Property>
</Properties>
</TypeDescriptor>
.......