Pergunta

Estou criando listas personalizadas(campos,CT,Lista de Def e lista de Instância) A e B com o visual studio.Eu tenho coluna de site chamado "Status" eu tenho usado essas nome da coluna na Listaa e Listab.De repente, eu preciso mudar Listab Campo "Status" nome de exibição como StatusB, Desde a sua coluna de site depois de alterar o nome de exibição irá afectar a listA de exibição de nome também.Como resolver os problemas?eu preciso atualizar o campo na lista de definição?

Foi útil?

Solução

No segundo tipo de conteúdo que você possa ter criado para o Listab especificar o atributo Inherits para False para a propriedade ContentType.Um, em seguida, em FieldRefs seção renomear o campo de Status.

<ContentType ID="CTID"
                   Name="CTName"
                   Group="CTGroup"
                   Description="CTDescription"
                   Inherits="FALSE"
                   Version="0">
        <FieldRefs>
      <FieldRef Name="Status" ID="IDOFSTATUSColumn" DisplayName="StatusB"/>
    </FieldRefs>
    </ContentType>

Para mais informações pode consultar http://sharepointnadeem.blogspot.in/2011/06/change-default-field-names-in-child.html

Aqui você for lá.Isso é como você pode alterar o nome de exibição do campo usando CSOM e torná-lo um campo necessário:

            ClientContext clientContext = new ClientContext("http://demo2010a:90");
            List list = clientContext.Web.Lists.GetByTitle("Products");
            clientContext.Load(list);
            clientContext.ExecuteQuery();
            var fields = list.Fields;
            clientContext.Load(fields);
            clientContext.ExecuteQuery();
            var field = fields.GetByInternalNameOrTitle("Status");
            field.Required = true;
            field.Title = "StatusB";
            field.Update();
            clientContext.Load(field);
            clientContext.ExecuteQuery();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top