Pergunta

Eu estou tentando criar um personalizado ações usando wsp construtor, Minha estrutura de pastas é algo como isso,

enter image description here

Agora quando eu tento implantar solução de nada, surge no entanto tenho esse erro no meu log de ULS,

Falhou ao criar um controle da montagem ", classe ":O controle com o nome de assembly ", 'nome da classe" não é permitido para web na URL ".O tipo não está registrado como seguro.

Eu removido assembleia nomes de mim, no entanto eu li isso outra pergunta eles pedindo para adicionar manifest.xml arquivo, mas não sabe onde ele vai e se a criação de um wsp usando wsp builder irá incluir manifest.xml no wsp e vai resolver o problema ?

Foi útil?

Solução

Você pode adicionar um módulo de vazio ao seu projeto, aberto Propriedades janela e defina Entidades de controle segura de um novo módulo adicionado.Esta propriedade permite adicionar coleta de controles seguros.

Outras dicas

você precisa adicionar isso ao featureActivated função para recurso recivers

        SPWebConfigModification safeControl = new SPWebConfigModification();
                    safeControl.Path = "configuration/SharePoint/SafeControls";
                    safeControl.Owner = ModuleNameGoesHere;
                    safeControl.Name = "SafeControl[@Assembly='assembly.Name.goes.Here, Version=1.0.0.0, Culture=neutral, PublicKeyToken=87b3480442bff091'][@Namespace=Namespace.Name.goes.Here'][@TypeName='*'][@Safe='True']";
                    safeControl.Type = SPWebConfigModification.SPWebConfigModificationType.EnsureChildNode;
                    safeControl.Sequence = 0;
                    safeControl.Value = "<SafeControl Assembly='assembly.Name.goes.Here, Version=1.0.0.0, Culture=neutral, PublicKeyToken=87b3480442bff091' Namespace=Namespace.Name.goes.Here' TypeName='*' Safe='True' />";
                    mService.WebConfigModifications.Add(safeControl);
                    mService.Update();
                    mService.ApplyWebConfigModifications();

o código acima adiciona o recurso ou o que quer que talvez para os controles seguros na web.config para você!esta é a forma recomendada e segue as melhores práticas.Então, quando você ativar o recurso que ele vai adicionar os controles seguros :)

EDITAR

mais pode ser encontrado aqui semelhante ao exemplo acima!e sim, esta é a melhor prática e foi colocada em locais pela microsoft specificaly para registrar safecontrols sem manualmente a fazê-lo e ele automaticamente é adicionado a cada vez que você ativar o recurso na web.config isso é dentro do webapplication, portanto não é necessário fazê-lo manualmente várias vezes :) :

Uma coleção da web.config modificações é um conjunto de comandos que, quando processado pela web.configuração do manipulador no Microsoft SharePoint Fundação, alterar o estado da web.arquivo de configuração.Você pode cadeia juntos, um conjunto de estes comandos para garantir que eles se aplicam desejado tags e atributos dentro da web.config.Cada modificação é expresso como um objeto no modelo de objeto administrativo.

Use o WebConfigModifications propriedade do SPWebApplication ou SPWebService classe para obter o conjunto de web.config modificações no aplicativo Web ou em todos os aplicativos Web dentro da Serviço da Web.Para aplicar as modificações que você definir através do SPWebConfigModification classe para a web.arquivos de configuração do servidor fazenda, chamada a ApplyWebConfigModifications método atual conteúdo Web objeto de serviço, como segue:SPWebService.ContentService.ApplyWebConfigModifications

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.administration.spwebconfigmodification.aspx

espero que ajude :)

EDIT 2

Se o seu webpart, então, sim, você deve ter um arquivo de manifesto chamado manifest.xml com o seguinte:

<?xml version="1.0" encoding="utf-8" ?>
<Solution xmlns="http://schemas.microsoft.com/sharepoint/" SolutionId="{C1938CC9-A1A3-4e20-932C-33ECB2C47481}">
  <Assemblies>
    <Assembly DeploymentTarget="GlobalAssemblyCache" Location="WebPartsname.dll">
      <SafeControls>
        <SafeControl Assembly="namespacegoeshere, Version=1.0.0.0, Culture=neutral, PublicKeyToken=918d2ffdab83e9e8"
                     Namespace="namespacegoeshere" TypeName="*" Safe="True"/>
      </SafeControls>
    </Assembly>
  </Assemblies>
</Solution>

espero que ele lança alguma luz :)

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top