Fornecer informações de empacotamento e implantação em itens de projetoProvide packaging and deployment information in project items

Todos os itens de projeto do SharePoint no Visual StudioVisual Studio têm propriedades que você pode usar para fornecer dados adicionais quando o projeto é implantado no SharePoint.All SharePoint project items in Visual StudioVisual Studio have properties that you can use to provide additional data when the project is deployed to SharePoint. Estas são as seguintes propriedades:These properties are as follows:

  • Propriedades do recursoFeature Properties

  • Receptores de recursoFeature Receivers

  • Referências de saída do projetoProject Output References

  • Entradas de controle seguroSafe Control Entries

    Essas propriedades aparecem na propriedades janela.These properties appear in the Properties window.

Propriedades do recursoFeature properties

Use o propriedades do recurso propriedade para especificar os dados que usa o recurso.Use the Feature Properties property to specify data that the feature uses. Dados de propriedades de recurso são um conjunto de valores (armazenados como pares chave/valor) que está incluído com um recurso quando ele é implantado no SharePoint.Feature properties data is a set of values (stored as key/value pairs) that is included with a feature when it deploys to SharePoint. Depois que o recurso é implantado, você pode acessar os valores de propriedade em seu código.After the feature is deployed, you can access the property values in your code.

Quando você adiciona um valor de propriedade de recurso para um item de projeto, o valor é adicionado como um elemento no manifesto do recurso do item.When you add a feature property value to a project item, the value is added as an element in the manifest of the item's feature. Em um projeto de modelo de conectividade de dados comerciais (BDC), por exemplo, a propriedade de recurso ModelFileName aparece como:In a Business Data Connectivity (BDC) model project, for example, the ModelFileName feature property appears as:

<Property Key="ModelFileName" Value="BdcModel1\BdcModel1.bdcm" />   

Depois de definir um valor da propriedade de recurso, ele é adicionado como um elemento FeatureProperty do projeto . spdata arquivo.After you set a Feature Property value, it is added as a FeatureProperty element in the project's .spdata file. Para obter informações sobre como acessar as propriedades no SharePoint, consulte SPFeaturePropertyCollection classe.For information about accessing the properties in SharePoint, see SPFeaturePropertyCollection Class.

Os valores de propriedade de recurso idênticos de todos os itens de projeto são mesclados no manifesto do recurso.Identical feature property values from all project items are merged together in the feature manifest. No entanto, se dois itens de projeto diferente especificam a mesma chave de propriedade de recurso com valores não correspondentes, ocorre um erro de validação.However, if two different project items specify the same feature property key with non-matching values, a validation error occurs.

Para adicionar propriedades de recurso diretamente para o arquivo de recurso (Feature), chame o Visual StudioVisual Studio método de modelo de objeto SharePoint Add.To add feature properties directly to the feature file (.feature), call the Visual StudioVisual Studio SharePoint object model method Add. Se você usar esse método, lembre-se de que a mesma regra sobre como adicionar valores de propriedade de recurso idênticos nas propriedades de recurso também se aplica a propriedades adicionadas diretamente ao arquivo de recurso.If you use this method, be aware that the same rule about adding identical feature property values in Feature Properties also applies to properties added directly to the feature file.

Receptor de recursoFeature receiver

Receptores de recurso são o código que é executado quando determinados eventos ocorrem em um item de projeto que contém recursos.Feature receivers are code that executes when certain events occur to a project item's containing feature. Por exemplo, você pode definir os receptores de recurso que são executadas quando o recurso é instalado, ativado ou atualizado.For example, you can define feature receivers that execute when the feature is installed, activated, or upgraded. É uma maneira de adicionar um receptor de recurso é adicioná-lo diretamente para um recurso, conforme descrito em instruções passo a passo: Adicionar receptores de evento.One way to add a feature receiver is to add it directly to a feature as described in Walkthrough: Add feature event receivers. Outra maneira é um nome de classe do receptor de recurso e o assembly de referência a receptor do recurso propriedade.Another way is to reference a feature receiver class name and assembly in the Feature Receiver property.

Método diretoDirect method

Ao adicionar um receptor de recurso diretamente a um recurso, um arquivo de código está sob o recurso nó no Gerenciador de soluções.When you add a feature receiver to a feature directly, a code file is placed under the Feature node in Solution Explorer. Quando você compila sua solução do SharePoint, o código é compilado em um assembly e implanta para o SharePoint.When you build your SharePoint solution, the code compiles into an assembly and deploys to SharePoint. Por padrão, as propriedades de recurso Assembly do receptor e classe receptora o nome de classe e o assembly de referência.By default, the feature properties Receiver Assembly and Receiver Class reference the class name and assembly.

Método ReferenceReference method

Outra maneira de adicionar um receptor de recurso é usando o receptor do recurso propriedade de um item de projeto para referenciar um assembly de receptor de recurso.Another way to add a feature receiver is by using the Feature Receiver property of a project item to reference a feature receiver assembly. O valor da propriedade de receptor de recurso possui duas subpropriedades: Assembly e nome da classe.The Feature Receiver property value has two subproperties: Assembly and Class Name. O assembly deve usar sua totalmente qualificado, nome "forte" e o nome de classe devem ser o nome completo do tipo.The assembly must use its fully-qualified, "strong" name and the class name must be the full type name. Para obter mais informações, consulte Assemblies com nome forte.For more information, see Strong-Named Assemblies. Depois de implantar a solução para o SharePoint, o recurso usa o receptor do recurso referenciado para manipular eventos de recurso.After deploying the solution to SharePoint, the feature uses the referenced feature receiver to handle feature events.

Solução de valores de propriedade do destinatário no recurso de tempo, o recurso de compilação e seus projetos de mesclagem em conjunto para definir os atributos ReceiverAssembly e ReceiverClass do elemento recurso no manifesto do recurso de solução do SharePoint (. wsp ) arquivos.At solution build time, the feature receiver property values in the feature and its projects merge together to set the ReceiverAssembly and ReceiverClass attributes of the Feature element in the feature manifest of the SharePoint solution (.wsp) file. Portanto, se os valores de propriedade do Assembly e o nome de classe de um item de projeto e um recurso forem especificados, os valores de propriedade de recurso e de item de projeto devem corresponder.Therefore, if the Assembly and Class Name property values of a project item and a feature are both specified, the project item and feature property values must match. Se os valores não corresponderem, você receberá um erro de validação.If the values do not match, you will receive a validation error. Se você quiser que um item de projeto para referenciar um assembly de receptor de recurso diferente daquele usa seu recurso, movê-lo para outro recurso.If you want a project item to reference a feature receiver assembly other than the one its feature uses, move it to another feature.

Se você referenciar um assembly de receptor de recurso que não ainda esteja no servidor, você também deve incluir o arquivo de assembly no pacote; Visual StudioVisual Studio não adicioná-lo para você.If you reference a feature receiver assembly that is not already on the server, you must also include the assembly file itself in the package; Visual StudioVisual Studio does not add it for you. Quando você implanta o recurso, o arquivo de assembly é copiado para que o sistema GAC (cache de assembly global)global assembly cache (GAC) ou a pasta Bin no diretório físico do SharePoint.When you deploy the feature, the assembly file is copied to either the system's GAC (cache de assembly global)global assembly cache (GAC) or the Bin folder in the SharePoint physical directory. Para obter mais informações, consulte como: como: adicionar e remover assemblies adicionais.For more information, see how to: How to: Add and remove additional assemblies.

Para obter mais informações sobre os receptores de recurso, consulte receptor de evento de recurso e eventos de recurso.For more information about feature receivers, see Feature Event Receiver and Feature Events.

Referências de saída do projetoProject output references

A propriedade Project Output References Especifica uma dependência, como um assembly, o que o item de projeto precisa ser executada.The Project Output References property specifies a dependency, such as an assembly, that your project item needs to run. Por exemplo, suponha que sua solução tiver um projeto do BDC e um projeto de classe.For example, suppose your solution has a BDC project and a class project. Se o projeto BDC tem uma dependência no assembly que é produzido pelo projeto de classe, você pode referenciar o assembly na propriedade do Project Output References do projeto BDC.If the BDC project has a dependency on the assembly that is output by the class project, you can reference the assembly in the BDC project's Project Output References property. Quando o projeto do BDC é empacotado, o assembly dependente está incluído no pacote.When the BDC project is packaged, the dependent assembly is included in the package.

Referências de saída do projeto geralmente são assemblies, mas em alguns casos (por exemplo, projetos do Silverlight) pode ser outros tipos de arquivo.Project output references are usually assemblies, but in some cases (such as Silverlight projects) can be other file types.

Para obter mais informações, consulte como: adicionar uma referência de saída do projeto.For more information, see How to: Add a project output reference.

Entradas de controle seguroSafe control entries

O SharePoint fornece um mecanismo de segurança, chamado de entradas de controle seguro, para limitar o acesso de usuários não confiáveis para certos controles.SharePoint provides a security mechanism, called safe control entries, to limit the access of untrusted users to certain controls. Por design, o SharePoint permite que usuários não confiáveis carregar e criar páginas ASPX no servidor do SharePoint.By design, SharePoint allows untrusted users to upload and create ASPX pages on the SharePoint server. Para impedir que esses usuários adicionando o código não seguro para páginas ASPX, o SharePoint limita seu acesso a controles seguros.To prevent these users from adding unsafe code to ASPX pages, SharePoint limits their access to safe controls. Controles seguros são controles ASPX e Web parts designadas como seguras e que pode ser usado por qualquer usuário em seu site.Safe controls are ASPX controls and Web parts designated as secure and that can be used by any user on your site. Para obter mais informações, consulte etapa 4: adicionar a Web Part à lista de controles seguros.For more information, see Step 4: Add your Web Part to the Safe Controls List.

Cada item de projeto do SharePoint no Visual StudioVisual Studio tem uma propriedade chamada entradas de controle seguro que tem duas subpropriedades de Boolean: seguro e seguro contra Script.Every SharePoint project item in Visual StudioVisual Studio has a property called Safe Control Entries that has two Boolean subproperties: Safe and Safe Against Script. A propriedade de segurança Especifica se os usuários não confiáveis podem acessar um controle.The Safe property specifies whether untrusted users can access a control. A propriedade de segurança contra Script Especifica se os usuários não confiáveis podem exibir e alterar propriedades de um controle.The Safe Against Script property specifies whether untrusted users can view and change a control's properties.

Entradas de controle de segurança são referenciadas em uma base do assembly.Safe control entries are referenced on an assembly basis. Adicionar entradas de controle seguro ao assembly do projeto inserindo-os no item de projeto entradas de controle seguro propriedade.You add safe control entries to a project's assembly by entering them in the project item's Safe Control Entries property. No entanto, você também pode adicionar entradas de controle seguro ao assembly do projeto por meio de avançado guia o Package Designer quando você adiciona um assembly adicional para o pacote.However, you can also add safe control entries to a project's assembly through the Advanced tab in the Package Designer when you add an additional assembly to the package. Para obter mais informações, consulte como: marcar controles como controles seguros ou Registrando um Assembly de Web Part como um controle seguro.For more information, see How to: Mark controls as safe controls or Registering a Web Part Assembly as a Safe Control.

Entradas XML para controles segurosXML entries for safe controls

Quando você adiciona uma entrada de controle seguro para um item de projeto ou assembly do projeto, uma referência é gravada para o manifesto do pacote no seguinte formato:When you add a safe control entry to a project item or to the project's assembly, a reference is written to the package manifest in the following format:

<Assemblies>  
    <Assembly Location="<assembly name>.dll"     
      DeploymentTarget="<'GlobalAssemblyCache' or 'WebApplication'">>  
        <SafeControls>  
            <SafeControl Assembly="<assembly name>.dll" Namespace=  
              "<SharePoint project name>" Safe="<true/false>"     
                TypeName="<control name>"   
                SafeAgainstScript="<true/false>" />  
        </SafeControls>  
    </Assembly>  
</Assemblies>  

Consulte tambémSee also

Pacote e implantar soluções do SharePoint Package and deploying SharePoint solutions
Usar módulos para incluir arquivos na solução Use modules to include files in the solution
Estender o SharePoint empacotamento e implantaçãoExtend SharePoint packaging and deployment