Sdílet prostřednictvím


Návod: Vytvoření stránky aplikace SharePoint

Stránka aplikace je specializovaná forma ASP.NET stránky. Stránky aplikace obsahují obsah sloučený se stránkou předlohy SharePointu. Další informace najdete v tématu Vytvoření stránek aplikace pro SharePoint.

Tento názorný postup ukazuje, jak vytvořit stránku aplikace a pak ji ladit pomocí místního sharepointového webu. Tato stránka zobrazuje všechny položky, které každý uživatel vytvořil nebo upravil na všech webech na serverové farmě.

Tento návod znázorňuje následující úlohy:

  • Vytvoření sharepointového projektu
  • Přidání stránky aplikace do projektu SharePointu
  • Přidání ovládacích prvků ASP.NET na stránku aplikace
  • Přidání kódu za ovládacími prvky ASP.NET
  • Testování stránky aplikace

Poznámka:

Váš počítač může v následujících pokynech zobrazovat odlišné názvy nebo umístění některých prvků uživatelského rozhraní sady Visual Studio. Tyto prvky jsou určeny edicí sady Visual Studio a použitým nastavením. Další informace naleznete v tématu Přizpůsobení integrovaného vývojového prostředí sady Visual Studio.

Požadavky

  • Podporované edice Windows a SharePointu

Vytvoření sharepointového projektu

Nejprve vytvořte prázdný projekt Služby SharePoint. Později do tohoto projektu přidáte položku stránky aplikace.

  1. Spusťte Visual Studio.

  2. Otevřete dialogové okno Nový projekt, rozbalte uzel Office/SharePoint pod jazykem, který chcete použít, a pak zvolte uzel Řešení služby SharePoint.

  3. V podokně Nainstalované šablony sady Visual Studio zvolte šablonu SharePointu 2010 – Prázdný projekt. Pojmenujte projekt MySharePointProject a pak zvolte tlačítko OK .

    Zobrazí se Průvodce přizpůsobením SharePointu. Tento průvodce umožňuje vybrat web, který použijete k ladění projektu a úrovně důvěryhodnosti řešení.

  4. Zvolte tlačítko Nasadit jako řešení farmy a pak zvolte tlačítko Dokončit a přijměte výchozí místní sharepointový web.

Vytvoření stránky aplikace

Pokud chcete vytvořit stránku aplikace, přidejte do projektu položku stránky aplikace.

  1. V Průzkumník řešení zvolte projekt MySharePointProject.

  2. Na řádku nabídek zvolte Přidat novou položku projektu>.

  3. V dialogovém okně Přidat novou položku zvolte stránku aplikace (pouze šablona řešení farmy).

  4. Pojmenujte stránku SearchItems a pak zvolte tlačítko Přidat .

    Návrhář vizuálního webového vývojáře zobrazí stránku aplikace v zobrazení Zdroj , kde můžete zobrazit prvky HTML stránky. Návrhář zobrazí revize pro několik Content ovládacích prvků. Každý ovládací prvek se mapuje na ContentPlaceHolder ovládací prvek definovaný na výchozí stránce předlohy aplikace.

Návrh rozložení stránky aplikace

Položka Stránka aplikace umožňuje použít návrháře k přidání ASP.NET ovládacích prvků na stránku aplikace. Tento návrhář je stejný návrhář, který se používá ve Visual Web Developeru. Přidejte popisek, seznam přepínačů a tabulku do zobrazení Zdroj návrháře a nastavte vlastnosti stejně jako při návrhu standardní stránky ASP.NET stránky.

  1. Na řádku nabídek zvolte Zobrazit>panel nástrojů.

  2. Na standardním uzlu sady nástrojů proveďte jeden z následujících kroků:

    • Otevřete místní nabídku položky Popisek , zvolte Kopírovat, otevřete místní nabídku pro řádek pod ovládacím prvku Obsah PlaceHolderMain v návrháři a pak zvolte Vložit.

    • Přetáhněte položku Popisek ze sady nástrojů do těla ovládacího prvku obsahu PlaceHolderMain.

  3. Opakováním předchozího kroku přidejte položku DropDownList a položku tabulky do ovládacího prvku obsahu PlaceHolderMain .

  4. V návrháři změňte hodnotu Text atributu ovládacího prvku popisku na Zobrazit všechny položky.

  5. V návrháři nahraďte <asp:DropDownList> element následujícím kódem XML.

    <asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"
     OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
        <asp:ListItem Text="Created by me" Value="Author"></asp:ListItem>
        <asp:ListItem Text="Modified by me" Value="Editor"></asp:ListItem>
    </asp:DropDownList>
    

Zpracování událostí ovládacích prvků na stránce

Zpracovávat ovládací prvky na stránce aplikace stejně jako jakékoli ASP.NET stránce. V tomto postupu zpracujete SelectedIndexChanged událost rozevíracího seznamu.

  1. V nabídce Zobrazit zvolte Kód.

    Soubor kódu stránky aplikace se otevře v Editoru kódu.

  2. Do třídy přidejte následující metodu SearchItems . Tento kód zpracovává SelectedIndexChanged událost volání DropDownList metody, kterou vytvoříte později v tomto návodu.

    protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
    {
        SPSecurity.RunWithElevatedPrivileges(GetItems);
       
    }
    
  3. Na začátek souboru kódu stránky aplikace přidejte následující příkazy.

    using System.Web.UI.WebControls;
    using Microsoft.SharePoint.Administration;
    using System.Collections;
    
  4. Do třídy přidejte následující metodu SearchItems . Tato metoda iteruje všechny weby na serverové farmě a vyhledá položky vytvořené nebo upravené aktuálním uživatelem.

    private void GetItems()
    {
         SPFieldUserValue currentUser = new SPFieldUserValue
         (this.Web, this.Web.CurrentUser.ID, this.Web.CurrentUser.Name);
    
        ArrayList resultsList = new ArrayList();
    
        SPFarm thisFarm = SPFarm.Local;
        SPWebService service = thisFarm.Services.GetValue<SPWebService>("");
    
        foreach (SPWebApplication webApp in service.WebApplications)
        {
            foreach (SPSite siteCollection in webApp.Sites)
            {
                foreach (SPWeb web in siteCollection.AllWebs)
                {
                    SPListCollection lists = web.Lists;
                    foreach (SPList list in lists)
                    {
                        try
                        {
                            foreach (SPListItem item in list.Items)
                            {
                                if (item[DropDownList1.SelectedValue].ToString() ==
                                    currentUser.ToString())
                                {
                                    resultsList.Add(item);
                                }
                            }
                        }
                        catch (Exception)
                        {
                            // An error with the list. Move onto the next list.
                        }
                    }
                }
            }
        }
        CreateResultsTable(resultsList);
    
    }
    
  5. Do třídy přidejte následující metodu SearchItems . Tato metoda zobrazuje položky vytvořené nebo upravené aktuálním uživatelem v tabulce.

    private void CreateResultsTable(ArrayList resultsList)
    {
        string currentList = "";
        string currentSite = "";
        Table1.Rows.Clear();
    
        foreach (SPListItem item in resultsList)
        {
            if (item.ParentList.ParentWeb.Title != currentSite)
            {
                currentSite = item.ParentList.ParentWeb.Title;
    
                TableCell newSiteCell = new TableCell();
                newSiteCell.Text = currentSite;
    
                TableRow newSiteRow = new TableRow();
                newSiteRow.Cells.Add(newSiteCell);
                newSiteRow.Font.Bold = true;
                newSiteRow.Font.Size = FontUnit.Larger;
                newSiteRow.Font.Underline = true;
    
                Table1.Rows.Add(newSiteRow);
            }
            if (item.ParentList.Title != currentList)
            {
                currentList = item.ParentList.Title;
                TableCell newListCell = new TableCell();
                newListCell.Text = currentList;
    
                TableRow newListRow = new TableRow();
                newListRow.Cells.Add(newListCell);
                newListRow.Font.Bold = true;
    
                Table1.Rows.Add(newListRow);
    
                TableCell itemHeading = new TableCell();
                itemHeading.Text = "Item";
                itemHeading.Font.Italic = true;
    
                TableCell createdHeading = new TableCell();
                createdHeading.Text = "Created";
                createdHeading.Font.Italic = true;
    
                TableCell modifiedHeading = new TableCell();
                modifiedHeading.Text = "Last Modified";
                modifiedHeading.Font.Italic = true;
    
                TableRow headingRow = new TableRow();
                headingRow.Cells.Add(itemHeading);
                headingRow.Cells.Add(createdHeading);
                headingRow.Cells.Add(modifiedHeading);
    
                Table1.Rows.Add(headingRow);
            }
    
            TableCell itemName = new TableCell();
            HyperLink itemLink = new HyperLink();
            try
            {
                itemLink.NavigateUrl = item.ParentList.ParentWeb.Url + "/" +
                    item.ParentList.Forms[PAGETYPE.PAGE_DISPLAYFORM].Url +
                    "?ID=" + item.ID;
            }
            catch (Exception)
            {
                // Some items might not have a form page. Ignore the exception.
            }
            itemLink.Text = item.DisplayName;
            itemName.Controls.Add(itemLink);
    
            TableCell created = new TableCell();
            created.Text = item["Created"].ToString();
    
            TableCell modified = new TableCell();
            modified.Text = item["Modified"].ToString();
    
            TableRow dataRow = new TableRow();
            dataRow.Cells.Add(itemName);
            dataRow.Cells.Add(created);
            dataRow.Cells.Add(modified);
    
            Table1.Rows.Add(dataRow);
        }
    }
    

Otestování stránky aplikace

Po spuštění projektu se otevře sharepointový web a zobrazí se stránka aplikace.

  1. V Průzkumník řešení otevřete místní nabídku stránky aplikace a pak zvolte Nastavit jako spouštěcí položku.

  2. Zvolte klávesu F5 .

    Otevře se sharepointový web.

  3. Na stránce aplikace zvolte možnost Změněno mnou .

    Stránka aplikace se aktualizuje a zobrazí všechny položky, které jste upravili na všech webech na serverové farmě.

  4. Na stránce aplikace zvolte v seznamu možnost Vytvořeno mnou .

    Stránka aplikace se aktualizuje a zobrazí všechny položky, které jste vytvořili na všech webech na serverové farmě.

Další kroky

Další informace o stránkách aplikace SharePoint naleznete v tématu Vytváření stránek aplikace pro SharePoint.

Další informace o tom, jak navrhnout obsah stránky SharePointu pomocí vizuálního webového návrháře, najdete v těchto tématech: