Condividi tramite


Procedura dettagliata: creazione di un elemento di progetto Azione personalizzata con un modello di elemento, parte 1

È possibile estendere il sistema di progetto SharePoint in Visual Studio creando i tipi di elemento di progetto.In questa procedura dettagliata, si creerà un elemento di progetto che può essere aggiunto a un progetto SharePoint per creare un'azione personalizzata in un sito di SharePoint.L'azione personalizzata aggiunge una voce al menu Azioni sito del sito di SharePoint.

In questa procedura dettagliata vengono illustrate le attività seguenti:

  • Creazione di un'estensione di Visual Studio che definisca un nuovo tipo di elemento di progetto SharePoint per un'azione personalizzata.Il nuovo tipo di elemento di progetto implementa numerose funzionalità personalizzate:

    • Un menu di scelta rapida utilizzato come punto di partenza per altre attività correlate all'elemento di progetto, ad esempio la visualizzazione di una finestra di progettazione per l'azione personalizzata in Visual Studio.

    • Codice che viene eseguito quando uno sviluppatore modifica alcune proprietà dell'elemento di progetto e il progetto in cui è contenuto.

    • Un'icona personalizzata viene visualizzata accanto all'elemento di progetto in Esplora soluzioni.

  • Creazione di un modello di elemento di Visual Studio per l'elemento di progetto.

  • Compilazione di un pacchetto Visual Studio Extension (VSIX) per distribuire il modello di elemento di progetto e l'assembly delle estensioni.

  • Debug e test dell'elemento di progetto.

Si tratta di una procedura dettagliata autonoma.Dopo avere completato questa procedura dettagliata, è possibile migliorare l'elemento di progetto aggiungendo una procedura guidata al modello di elemento.Per ulteriori informazioni, vedere Procedura dettagliata: creazione di un elemento di progetto Azione personalizzata con un modello di elemento, parte 2.

[!NOTA]

È possibile scaricare un esempio che contiene i progetti completati, il codice e altri file di questa procedura dettagliata all'indirizzo seguente: https://go.microsoft.com/fwlink/?LinkId=191369.

Prerequisiti

Per completare la procedura dettagliata, nel computer di sviluppo devono essere presenti i componenti elencati di seguito:

Per completare la procedura dettagliata è consigliabile conoscere i concetti riportati di seguito:

Creazione dei progetti

Per completare questa procedura dettagliata è necessario creare tre progetti:

  • Un progetto VSIX.Questo progetto consente di creare il pacchetto VSIX per distribuire l'elemento di progetto SharePoint.

  • Un progetto di modello di elemento.Questo progetto consente di creare un modello di elemento che può essere utilizzato per aggiungere l'elemento di progetto SharePoint a un progetto SharePoint.

  • Un progetto di libreria di classi.Questo progetto implementa un'estensione di Visual Studio che definisce il comportamento dell'elemento di progetto SharePoint.

Iniziare la procedura dettagliata creando i progetti.

Per creare il progetto VSIX

  1. Avviare Visual Studio.

  2. Sulla barra dei menu, scegliere Il file, Nuova, Project.

  3. Nell'elenco nella parte superiore della finestra di dialogo Nuovo progetto, assicurarsi che .NET Framework 4.5 sia selezionato.

  4. Nella finestra di dialogo Nuovo progetto, espandere i nodi Visual Basic o Visual C# quindi selezionare il nodo Extensibility.

    [!NOTA]

    Il nodo Extensibility è disponibile solo se si installa Visual Studio SDK.Per ulteriori informazioni, vedere la sezione precedente relativa ai prerequisiti.

  5. Scegliere il modello Progetto VSIX.

  6. Nella casella Nome, immettere CustomActionProjectItemquindi scegliere il pulsante OK.

    Visual Studio consente di aggiungere il progetto CustomActionProjectItem a Esplora soluzioni.

Per creare il progetto di modello di elemento

  1. In Esplora soluzioni, aprire il menu di scelta rapida del nodo della soluzione, scegliere Aggiungiquindi scegliere Nuovo progetto.

    [!NOTA]

    Nei progetti di Visual Basic, il nodo della soluzione viene visualizzato in Esplora soluzioni solo quando la casella di controllo Mostra sempre soluzione viene selezionata in General, Projects and Solutions, Options Dialog Box.

  2. Nell'elenco nella parte superiore della finestra di dialogo Nuovo progetto, assicurarsi che .NET Framework 4.5 sia selezionato.

  3. Nella finestra di dialogo Nuovo progetto, espandere i nodi Visual Basic o Visual C# quindi selezionare il nodo Extensibility.

  4. Nell'elenco di modelli di progetto, scegliere il modello Modello di elemento di Visual Basic o Modello di elemento C#.

  5. Nella casella Nome, immettere ItemTemplatequindi scegliere il pulsante OK.

    Tramite Visual Studio il progetto ItemTemplate verrà aggiunto alla soluzione.

Per creare il progetto di estensione

  1. In Esplora soluzioni, aprire il menu di scelta rapida del nodo della soluzione, scegliere Aggiungiquindi scegliere Nuovo progetto.

  2. Nell'elenco nella parte superiore della finestra di dialogo Nuovo progetto, assicurarsi che .NET Framework 4.5 sia selezionato.

  3. Nella finestra di dialogo Nuovo progetto, espandere i nodi Visual Basic o Visual C#, selezionare il nodo Finestre quindi scegliere il modello di progetto Libreria di classi.

  4. Nella casella Nome, immettere ProjectItemDefinitionquindi scegliere il pulsante OK.

    Visual Studio aggiunge il progetto ProjectItemDefinition alla soluzione e apre il file di codice predefinito Class1.

  5. Eliminare il file di codice Class1 dal progetto.

Configurazione del progetto di estensione

Prima di scrivere codice per definire il tipo di elemento di progetto SharePoint, è necessario aggiungere al progetto di estensione file di codice e riferimenti all'assembly.

Per configurare il progetto

  1. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ProjectItemDefinition, scegliere Aggiungi, quindi scegliere Nuovo elemento.

  2. Nell'elenco di elementi di progetto, scegliere File di codice.

  3. Nella casella Nome, il nome CustomAction con l'estensione di file corrette e quindi scegliere il pulsante Aggiungi.

  4. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ProjectItemDefinition quindi scegliere Aggiungi riferimento.

  5. Nella finestra di dialogo Gestione riferimenti – ProjectItemDefinition, selezionare il nodo Assembly quindi selezionare il nodo Framework.

  6. Selezionare la casella di controllo accanto agli assembly seguenti:

    • System.ComponentModel.Composition

    • System.Windows.Forms

  7. Scegliere il nodo Estensioni, selezionare la casella di controllo accanto all'assembly Microsoft.VisualStudio.Sharepoint quindi scegliere il pulsante OK.

Definizione del nuovo tipo di elemento di progetto SharePoint

Creare una classe che implementi l'interfaccia ISharePointProjectItemTypeProvider per definire il comportamento del nuovo tipo di elemento di progetto.Implementare questa interfaccia tutte le volte che si desidera definire un nuovo tipo di elemento di progetto.

Per definire il nuovo elemento di progetto SharePoint

  1. Nel progetto ProjectItemDefinition aprire il file di codice CustomAction.

  2. Sostituire il codice di questo file con il seguente.

    Imports System
    Imports System.Diagnostics
    Imports System.ComponentModel
    Imports System.ComponentModel.Composition
    Imports Microsoft.VisualStudio.SharePoint
    
    Namespace Contoso.SharePointProjectItems.CustomAction
    
        ' Export attribute: Enables Visual Studio to discover and load this extension.
        ' SharePointProjectItemType attribute: Specifies the ID for this new project item type. This string must 
        '     match the value of the Type attribute of the ProjectItem element in the .spdata file for 
        '     the project item.
        ' SharePointProjectItemIcon attribute: Specifies the icon to display with this project item in Solution Explorer.
        ' CustomActionProjectItemTypeProvider class: Defines a new type of project item that can be used to create a custom 
        '     action on a SharePoint site.
        <Export(GetType(ISharePointProjectItemTypeProvider))> _
        <SharePointProjectItemType("Contoso.CustomAction")> _
        <SharePointProjectItemIcon("ProjectItemDefinition.CustomAction_SolutionExplorer.ico")> _
        Partial Friend Class CustomActionProjectItemTypeProvider
            Implements ISharePointProjectItemTypeProvider
    
            Private WithEvents projectItemTypeDefinition As ISharePointProjectItemTypeDefinition
    
            ' Configures the behavior of the project item type.
            Private Sub InitializeType(ByVal projectItemTypeDefinition As ISharePointProjectItemTypeDefinition) _
                Implements ISharePointProjectItemTypeProvider.InitializeType
    
                projectItemTypeDefinition.Name = "CustomAction"
                projectItemTypeDefinition.SupportedDeploymentScopes = _
                    SupportedDeploymentScopes.Site Or SupportedDeploymentScopes.Web
                projectItemTypeDefinition.SupportedTrustLevels = SupportedTrustLevels.All
                Me.projectItemTypeDefinition = projectItemTypeDefinition
            End Sub
    
            Private Const DesignerMenuItemText As String = "View Custom Action Designer"
    
            Private Sub ProjectItemMenuItemsRequested(ByVal Sender As Object, _
                ByVal e As SharePointProjectItemMenuItemsRequestedEventArgs) _
                Handles projectItemTypeDefinition.ProjectItemMenuItemsRequested
    
                Dim viewDesignerMenuItem As IMenuItem = e.ViewMenuItems.Add(DesignerMenuItemText)
                AddHandler viewDesignerMenuItem.Click, AddressOf MenuItemClick
            End Sub
    
            Private Sub MenuItemClick(ByVal Sender As Object, ByVal e As MenuItemEventArgs)
                Dim projectItem As ISharePointProjectItem = CType(e.Owner, ISharePointProjectItem)
                Dim message As String = String.Format("You clicked the menu on the {0} item. " & _
                    "You could perform some related task here, such as displaying a designer " & _
                    "for the custom action.", projectItem.Name)
                System.Windows.Forms.MessageBox.Show(message, "Contoso Custom Action")
            End Sub
    
            Private Sub ProjectItemNameChanged(ByVal Sender As Object, ByVal e As NameChangedEventArgs) _
                Handles projectItemTypeDefinition.ProjectItemNameChanged
                Dim projectItem As ISharePointProjectItem = CType(Sender, ISharePointProjectItem)
                Dim message As String = String.Format("The name of the {0} item changed to: {1}", _
                    e.OldName, projectItem.Name)
                projectItem.Project.ProjectService.Logger.WriteLine(message, LogCategory.Message)
            End Sub
        End Class
    End Namespace
    
    using System;
    using System.Diagnostics;
    using System.ComponentModel;
    using System.ComponentModel.Composition;
    using Microsoft.VisualStudio.SharePoint;
    
    namespace Contoso.SharePointProjectItems.CustomAction
    {
        // Enables Visual Studio to discover and load this extension.
        [Export(typeof(ISharePointProjectItemTypeProvider))]
    
        // Specifies the ID for this new project item type. This string must match the value of the 
        // Type attribute of the ProjectItem element in the .spdata file for the project item.
        [SharePointProjectItemType("Contoso.CustomAction")]
    
        // Specifies the icon to display with this project item in Solution Explorer.
        [SharePointProjectItemIcon("ProjectItemDefinition.CustomAction_SolutionExplorer.ico")]
    
        // Defines a new type of project item that can be used to create a custom action on a SharePoint site.
        internal partial class CustomActionProjectItemTypeProvider : ISharePointProjectItemTypeProvider
        {
            // Implements IProjectItemTypeProvider.InitializeType. Configures the behavior of the project item type.
            public void InitializeType(ISharePointProjectItemTypeDefinition projectItemTypeDefinition)
            {
                projectItemTypeDefinition.Name = "CustomAction";
                projectItemTypeDefinition.SupportedDeploymentScopes =
                    SupportedDeploymentScopes.Site | SupportedDeploymentScopes.Web;
                projectItemTypeDefinition.SupportedTrustLevels = SupportedTrustLevels.All;
    
                projectItemTypeDefinition.ProjectItemNameChanged += ProjectItemNameChanged;
                projectItemTypeDefinition.ProjectItemMenuItemsRequested += ProjectItemMenuItemsRequested;
            }
    
            private const string designerMenuItemText = "View Custom Action Designer";
    
            private void ProjectItemMenuItemsRequested(object sender, SharePointProjectItemMenuItemsRequestedEventArgs e)
            {
                e.ViewMenuItems.Add(designerMenuItemText).Click += MenuItemClick;
            }
    
            private void MenuItemClick(object sender, MenuItemEventArgs e)
            {
                ISharePointProjectItem projectItem = (ISharePointProjectItem)e.Owner;
                string message = String.Format("You clicked the menu on the {0} item. " +
                    "You could perform some related task here, such as displaying a designer " +
                    "for the custom action.", projectItem.Name);
                System.Windows.Forms.MessageBox.Show(message, "Contoso Custom Action");
            }
    
            private void ProjectItemNameChanged(object sender, NameChangedEventArgs e)
            {
                ISharePointProjectItem projectItem = (ISharePointProjectItem)sender;
                string message = String.Format("The name of the {0} item changed to: {1}",
                    e.OldName, projectItem.Name);
                projectItem.Project.ProjectService.Logger.WriteLine(message, LogCategory.Message);
            }
        }
    }
    

Creazione di un'icona per l'elemento di progetto in Esplora soluzioni

Quando si crea un elemento di progetto SharePoint personalizzato è possibile associare un'immagine (icona o bitmap) all'elemento di progetto.Questa immagine viene visualizzata accanto all'elemento di progetto in Esplora soluzioni.

Nella procedura riportata di seguito viene creata un'icona per l'elemento di progetto e tale icona viene incorporata nell'assembly delle estensioni.L'oggetto SharePointProjectItemIconAttribute della classe CustomActionProjectItemTypeProvider creata precedentemente fa riferimento all'icona.

Per creare un'icona personalizzata per l'elemento di progetto

  1. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ProjectItemDefinition, scegliere Aggiungiquindi scegliere Nuovo elemento….

  2. Nell'elenco di elementi di progetto, selezionare l'elemento File icona.

    [!NOTA]

    Nei progetti di Visual Basic., è necessario selezionare il nodo Generale per visualizzare l'elemento File icona.

  3. Nella casella Nome, immettere CustomAction_SolutionExplorer.icoquindi scegliere il pulsante Aggiungi.

    La nuova icona viene aperta in Editor immagini.

  4. Modificare la versione 16x16 del file icona in modo che la relativa progettazione sia facilmente riconoscibile, quindi salvarlo.

  5. In Esplora soluzioni, scegliere CustomAction_SolutionExplorer.ico.

  6. Nella finestra Proprietà, scegliere la freccia accanto alla proprietà Operazione di compilazione.

  7. Nell'elenco visualizzato, scegliere Risorsa incorporata.

Verifica

In questa fase della procedura dettagliata, tutto il codice per l'elemento di progetto si trova nel progetto.Compilare il progetto per verificare che venga compilato senza errori.

Per compilare il progetto

  • Aprire il menu di scelta rapida del progetto ProjectItemDefinition e scegliere Compilazione.

Creazione di un modello di elemento di Visual Studio

Per consentire agli altri sviluppatori di utilizzare l'elemento di progetto è necessario creare un modello di progetto o di elemento.Gli sviluppatori utilizzano questi modelli in Visual Studio per generare un'istanza dell'elemento di progetto creando un nuovo progetto o aggiungendo un elemento a un progetto esistente.Per questa procedura dettagliata, utilizzare il progetto ItemTemplate per configurare l'elemento di progetto.

Per creare il modello di elemento

  1. Eliminare il file di codice Class1 dal progetto ItemTemplate.

  2. Nel progetto ItemTemplate aprire il file ItemTemplate.vstemplate.

  3. Sostituire il contenuto del file con il codice XML seguente, quindi salvare e chiudere il file.

    [!NOTA]

    Il codice XML seguente è per un modello di elemento Visual C#.Se si crea un modello di elemento Visual Basic, sostituire il valore dell'elemento ProjectType con VisualBasic.

    <?xml version="1.0" encoding="utf-8"?>
    <VSTemplate Version="2.0.0" xmlns="https://schemas.microsoft.com/developer/vstemplate/2005" Type="Item">
      <TemplateData>
        <DefaultName>CustomAction</DefaultName>
        <Name>Custom Action</Name>
        <Description>SharePoint Custom Action by Contoso</Description>
        <ProjectType>CSharp</ProjectType>
        <SortOrder>1000</SortOrder>
        <Icon>ItemTemplate.ico</Icon>
        <ProvideDefaultName>true</ProvideDefaultName>
      </TemplateData>
      <TemplateContent>
        <ProjectItem ReplaceParameters="true" TargetFileName="$fileinputname$\Elements.xml">Elements.xml</ProjectItem>
        <ProjectItem ReplaceParameters="true" TargetFileName="$fileinputname$\SharePointProjectItem.spdata">CustomAction.spdata</ProjectItem>
      </TemplateContent>
    </VSTemplate>
    

    Questo file consente di definire il contenuto e il comportamento del modello di elemento.Per ulteriori informazioni sul contenuto di questo file, vedere Riferimenti allo schema dei modelli di Visual Studio.

  4. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ItemTemplate, scegliere Aggiungiquindi scegliere Nuovo elemento.

  5. Nella finestra di dialogo Aggiungi nuovo elemento, scegliere il modello File di testo.

  6. Nella casella Nome, immettere CustomAction.spdataquindi scegliere il pulsante Aggiungi.

  7. Aggiungere il codice XML seguente al file CustomAction.spdata, quindi salvare e chiudere il file.

    <?xml version="1.0" encoding="utf-8"?>
    <ProjectItem Type="Contoso.CustomAction" DefaultFile="Elements.xml" 
     xmlns="https://schemas.microsoft.com/VisualStudio/2010/SharePointTools/SharePointProjectItemModel">
      <Files>
        <ProjectItemFile Source="Elements.xml" Target="$fileinputname$\" Type="ElementManifest" />
      </Files>
    </ProjectItem>
    

    In questo file sono contenute informazioni sui file presenti nell'elemento di progetto.L'attributo Type dell'elemento ProjectItem deve essere impostato sulla stessa stringa passata all'oggetto SharePointProjectItemTypeAttribute nella definizione di elemento di progetto (la classe CustomActionProjectItemTypeProvider creata precedentemente in questa procedura dettagliata).Per ulteriori informazioni sul contenuto dei file spdata, vedere Riferimento allo schema degli elementi di progetto SharePoint.

  8. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ItemTemplate, scegliere Aggiungiquindi scegliere Nuovo elemento.

  9. Nella finestra di dialogo Aggiungi nuovo elemento, scegliere il modello File XML.

  10. Nella casella Nome, immettere Elements.xmlquindi scegliere il pulsante Aggiungi.

  11. Sostituire il contenuto del file Elements.xml con il codice XML seguente, quindi salvare e chiudere il file.

    <?xml version="1.0" encoding="utf-8" ?>
    <Elements Id="$guid8$" xmlns="https://schemas.microsoft.com/sharepoint/">
      <CustomAction Id="Replace this with a GUID or some other unique string"
                    GroupId="SiteActions"
                    Location="Microsoft.SharePoint.StandardMenu"
                    Sequence="1000"
                    Title="Replace this with your title"
                    Description="Replace this with your description" >
        <UrlAction Url="~site/Lists/Tasks/AllItems.aspx"/>
      </CustomAction>
    </Elements>
    

    Questo file consente di definire un'azione personalizzata predefinita attraverso cui viene creata una voce nel menu Azioni sito del sito di SharePoint.Quando un utente sceglie la voce di menu, l'url specificato nell'elemento UrlAction viene aperto nel browser.Per ulteriori informazioni sugli elementi XML che è possibile utilizzare per definire un'azione personalizzata, vedere le definizioni di azioni personalizzate (la pagina potrebbe essere in inglese).

  12. Facoltativamente, aprire il file ItemTemplate.ico e modificarlo in modo da poterlo riconoscere.Questa icona verrà visualizzata accanto all'elemento di progetto nella finestra di dialogo Aggiungi nuovo elemento.

  13. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ItemTemplate quindi scegliere Scarica progetto.

  14. Aprire nuovamente il menu di scelta rapida del progetto ItemTemplate quindi scegliere Modifica ItemTemplate.csproj o Modifica ItemTemplate.vbproj.

  15. Individuare l'elemento VSTemplate seguente nel file di progetto.

    <VSTemplate Include="ItemTemplate.vstemplate">
    
  16. Sostituire l'elemento VSTemplate con l'xml riportato quindi salvare e chiudere il file.

    <VSTemplate Include="ItemTemplate.vstemplate">
      <OutputSubPath>SharePoint\SharePoint14</OutputSubPath>
    </VSTemplate>
    

    L'elemento OutputSubPath specifica cartelle aggiuntive nel percorso in cui viene creato il modello di elemento quando si compila il progetto.Le cartelle specificate garantiscono che il modello di elemento sarà disponibile solo quando i clienti aprire la finestra di dialogo Aggiungi nuovo elemento, espandere il nodo SharePoint quindi selezionare il nodo 2010.

  17. In Esplora soluzioni, aprire il menu di scelta rapida del progetto ItemTemplate quindi scegliere Ricarica progetto.

Creazione di un pacchetto VSIX per distribuire l'elemento di progetto

Per distribuire l'estensione, utilizzare il progetto VSIX nella soluzione per creare un pacchetto VSIX.Anzitutto, configurare il pacchetto VSIX modificando il file source.extension.vsixmanifest incluso nel progetto VSIX.Successivamente, creare il pacchetto VSIX compilando la soluzione.

Per configurare e creare il pacchetto VSIX

  1. In Esplora soluzioni, aprire il menu di scelta rapida per il file source.extension.vsixmanifest il progetto CustomActionProjectItem quindi scegliere Apri.

    Visual Studio consente di aprire il file nell'editor del manifesto.Il file source.extension.vsixmanifest è la base del file extension.vsixmanifest che tutti i pacchetti VSIX richiedono.Per ulteriori informazioni su questo file, vedere Informazioni di riferimento sullo schema dell'estensione VSIX.

  2. Nella casella Nome prodotto, immettere Elemento di progetto azione personalizzata.

  3. Nella casella Autore, immettere Contoso.

  4. Nella casella Descrizione, immettere un elemento di progetto SharePoint che rappresenta un'azione personalizzata.

  5. Nella scheda Asset, scegliere il pulsante Nuova.

    La finestra di dialogo Aggiungi nuovo asset visualizzato.

  6. Nell'elenco Tipo, scegliere Microsoft.VisualStudio.ItemTemplate.

    [!NOTA]

    Questo valore corrisponde all'elemento ItemTemplate del file extension.vsixmanifest.Questo elemento consente di identificare la sottocartella nel pacchetto VSIX che contiene il modello degli elementi del progetto.Per ulteriori informazioni, vedere ItemTemplate Element.

  7. Nell'elenco Alimentazione, scegliere Progetto nella soluzione corrente.

  8. Nell'elenco Project, scegliere ItemTemplatequindi scegliere il pulsante OK.

  9. Nella scheda Asset, scegliere nuovamente il pulsante Nuova.

    La finestra di dialogo Aggiungi nuovo asset visualizzato.

  10. Nell'elenco Tipo, scegliere Microsoft.VisualStudio.MefComponent.

    [!NOTA]

    Questo valore corrisponde all'elemento MefComponent del file extension.vsixmanifest.Questo elemento specifica il nome di un assembly dell'estensione nel pacchetto VSIX.Per ulteriori informazioni, vedere MEFComponent Element.

  11. Nell'elenco Alimentazione, scegliere Progetto nella soluzione corrente.

  12. Nell'elenco Project, scegliere ProjectItemDefinition.

  13. Scegliere il pulsante OK.

  14. Sulla barra dei menu, scegliere Compilazione, Compila soluzionequindi assicurarsi che il progetto venga compilato senza errori.

  15. Verificare che la cartella di output di compilazione per il progetto CustomActionProjectItem contenga il file CustomActionProjectItem.vsix.

    Per impostazione predefinita, la cartella dell'output di compilazione è ..\bin\Debug sotto la cartella che contiene il progetto CustomActionProjectItem.

Test dell'elemento di progetto

È ora possibile testare l'elemento di progetto.Avviare innanzitutto il debug della soluzione CustomActionProjectItem nell'istanza sperimentale di Visual Studio.Testare quindi l'elemento di progetto Azione personalizzata in un progetto SharePoint nell'istanza sperimentale di Visual Studio.Infine, compilare ed eseguire il progetto SharePoint per verificare che l'azione personalizzata funzioni come previsto.

Per avviare il debug della soluzione

  1. Riavviare Visual Studio con credenziali amministrative e aprire la soluzione CustomActionProjectItem.

  2. Aprire il file di codice CustomAction e aggiungere un punto di interruzione alla prima riga di codice nel metodo InitializeType.

  3. Scegliere la chiave F5 per avviare il debug.

    In Visual Studio i file di estensione vengono installati in %UserProfile%\Dati applicazione\Locale\Microsoft\VisualStudio\10.0Exp\Extensions\Custom Action Project Item\1.0 e viene avviata un'istanza sperimentale di Visual Studio.L'elemento del progetto verrà testato in questa istanza di Visual Studio.

Per testare l'elemento di progetto in Visual Studio

  1. Nell'istanza sperimentale di Visual Studio, sulla barra dei menu, scegliere Il file, Nuova, Project.

  2. Espandere Visual C# o Visual Basic (a seconda del linguaggio che il modello di elemento supporta), espandere SharePointquindi selezionare il nodo 2010.

  3. Nell'elenco di modelli di progetto, scegliere Progetto SharePoint 2010.

  4. Nella casella Nome, immettere CustomActionTestquindi scegliere il pulsante OK.

  5. In Personalizzazione guidata SharePoint, immettere l'url del sito che si desidera utilizzare per il debug e quindi scegliere il pulsante Fine.

  6. In Esplora soluzioni, aprire il menu di scelta rapida del nodo del progetto, scegliere Aggiungiquindi scegliere Nuovo elemento.

  7. Nella finestra di dialogo Aggiungi nuovo elemento, selezionare il nodo 2010 nel nodo SharePoint.

    Verificare che l'elemento Azione personalizzata sia visualizzato nell'elenco di elementi di progetto.

  8. Selezionare l'elemento Azione personalizzata quindi scegliere il pulsante Aggiungi.

    In Visual Studio viene aggiunto un elemento denominato CustomAction1 al progetto e aprire il file Elements.xml nell'editor.

  9. Verificare che il codice nell'altra istanza di Visual Studio venga interrotto in corrispondenza del punto di interruzione impostato precedentemente nel metodo InitializeType.

  10. Scegliere la chiave F5 per continuare il debug del progetto.

  11. Nell'istanza sperimentale di Visual Studio, in Esplora soluzioni, aprire il menu di scelta rapida del nodo CustomAction1 quindi scegliere Visualizza Custom Action Designer.

  12. Verificare che venga visualizzata una finestra di messaggio e quindi scegliere il pulsante OK.

    Questo menu di scelta rapida può essere utilizzato per fornire opzioni o comandi aggiuntivi agli sviluppatori, ad esempio per visualizzare una finestra di progettazione per l'azione personalizzata.

  13. Sulla barra dei menu, scegliere Visualizza, Output.

    Verrà aperta la finestra Output.

  14. In Esplora soluzioni, aprire il menu di scelta rapida per l'elemento CustomAction1 quindi modificare il nome in MyCustomAction.

    Nella finestra Output, un visualizzato un messaggio di conferma.Questo messaggio viene scritto dal gestore eventi ProjectItemNameChanged definita nella classe CustomActionProjectItemTypeProvider.Questo e altri eventi dell'elemento di progetto possono essere gestiti per implementare il comportamento personalizzato quando lo sviluppatore modifica l'elemento di progetto.

Per testare l'azione personalizzata in SharePoint

  1. Nell'istanza sperimentale di Visual Studio, aprire il file Elements.xml che è un elemento figlio dell'elemento di progetto MyCustomAction.

  2. Nel file Elements.xml, apportare le seguenti modifiche e salvare il file:

    • Nell'elemento CustomAction, impostare l'attributo Id a un GUID o a un'altra stringa univoca come illustrato nel seguente esempio:

      Id="cd85f6a7-af2e-44ab-885a-0c795b52121a"
      
    • Nell'elemento CustomAction, impostare l'attributo Title come illustrato nel seguente esempio:

      Title="SharePoint Developer Center"
      
    • Nell'elemento CustomAction, impostare l'attributo Description come illustrato nel seguente esempio:

      Description="Opens the SharePoint Developer Center Web site."
      
    • Nell'elemento UrlAction, impostare l'attributo Url come illustrato nel seguente esempio:

      Url="https://msdn.microsoft.com/sharepoint/default.aspx"
      
  3. Scegliere il tasto F5.

    L'azione personalizzata viene assemblata e distribuita al sito di SharePoint specificato nella proprietà URL sito del progetto.Il browser viene visualizzata la pagina predefinita di questo sito.

    [!NOTA]

    Se la finestra di dialogo Debug degli script disabilitato viene visualizzato, scegliere il pulsante per continuare il debug del progetto.

  4. Scegliere dal menu Azioni sito, scegliere Centro per sviluppatori SharePoint, verificare che il browser aprire il sito Web https://msdn.microsoft.com/sharepoint/default.aspx e quindi chiudere il browser.

Pulizia del computer di sviluppo

Dopo aver completato il test dell'elemento di progetto, rimuovere il modello di elemento di progetto dall'istanza sperimentale di Visual Studio.

Per pulire il computer di sviluppo

  1. Nell'istanza sperimentale di Visual Studio, sulla barra dei menu, scegliere Strumenti, Estensioni e aggiornamenti.

    La finestra di dialogo Estensioni e aggiornamenti viene aperto.

  2. Nell'elenco di estensioni selezionare, Elemento di progetto azione personalizzataquindi scegliere il pulsante Disinstalla.

  3. Nella finestra di dialogo, scegliere il pulsante per confermare che si desidera disinstallare l'estensione.

  4. Scegliere il pulsante Riavvia ora per completare la disinstallazione.

  5. Chiudere sia l'istanza sperimentale di Visual Studio che l'istanza in cui la soluzione CustomActionProjectItem aperta.

Passaggi successivi

Dopo avere completato questa procedura dettagliata, è possibile aggiungere una procedura guidata al modello di elemento.Quando un utente aggiunge un elemento di progetto azione personalizzata a un progetto SharePoint, la procedura guidata vengono raccolte informazioni sull'azione (ad esempio il percorso e l'url da passare quando l'azione a scelta) e queste informazioni nel file Elements.xml nel nuovo elemento di progetto.Per ulteriori informazioni, vedere Procedura dettagliata: creazione di un elemento di progetto Azione personalizzata con un modello di elemento, parte 2.

Vedere anche

Attività

Procedura dettagliata: creazione di un elemento di progetto Azione personalizzata con un modello di elemento, parte 2

Creazione di un'icona o di un'altra immagine (Editor di immagini per le icone)

Riferimenti

Riferimenti allo schema dei modelli di Visual Studio

Editor di immagini per le icone

Concetti

Definizione di tipi di elementi di progetto SharePoint

Creazione di modelli di elemento e di modelli di progetto per gli elementi di progetto SharePoint

Utilizzo del servizio di progetto SharePoint