O CAML parser do SharePoint 2010 tem um problema que faz com que seja ignorados os campos numa definição de Content Type. Quando criar uma feature para definição de um Content Type, evite colocar comentários dentro do bloco <fieldrefs> porque isso fará com que o SharePoint crie o Content Type mas ignore todos os campos, muito embora o XML esteja correctamente formado.
<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<ContentType
ID="0x0100C5647A362F236548B218C15302286758"
Name="MyCT"
Description="Simple Custom Content Type"
Inherits="TRUE"
Overwrite="TRUE"
Version="0">
<Folder TargetName=”_cts/MyCT” />
<FieldRefs>
<FieldRef ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" Name="Title" />
<!-- This is a comment –->
<FieldRef ID="{b402db15-ee44-4ec4-89e3-23e10a8fc64c}" Name="My_x0200_Field" />
<FieldRef ID="{538c71e4-8650-4ce7-b021-920effa66346}" Name="Status" />
</FieldRefs>
</ContentType>
</Elements>
A definição apresentada acima fará com que o Content Type seja criado apenas com o campo Title, que é herdado do Content Type pai (neste caso Item). Todos os campos referenciados nesta definição serão ignorados.
André Vala
|create|it|