Pour la création de la page, nous aurons besoin de l'ID de l'assembly, pour ce faire nous aurons besoin de reflector à télécharger ici.
Pour connaitre cet ID, il vous faut compiler le projet, verifiez bien que le GAC accepte bien l'assembly.
Une fois le projet compiler, lancer Reflector, puis File->Open-> allez dans le dossier de comilation du projet, puis ouvrez le fichier FirstFeature.dll.
En bas de la fenetre vous verrez :

Name : c'est cette ligne qu'il faudra copier pour la page.
Passons à la création de la page aspx.
Pour commencer, où allons-nous mettre cette page???
Nous allons la mettre dans le dossier LAYOUTS/FirstFeature.
Click droit -> add new Item, selectionnez Web Form, nommez ce fichier FirstFeaturePage.aspx.
Dans le context de sharepoint, nous pouvons utiliser les placeholder de la master page.
Donc, à cette étape supprimez le contenu de cette page et coller ce code:
<%@ Assembly Name="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Assembly Name="FirstFeature, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b6897623fa5e9b8b" %>
<%@ Page Language="C#" MasterPageFile="~/_layouts/application.master" Inherits="FirstFeature.ApplicationPage"
EnableViewState="false" EnableViewStateMac="false" %>
<%@ Import Namespace="Microsoft.SharePoint" %>
<asp:Content ID="Main" runat="server" contentplaceholderid="PlaceHolderMain" %>
<table border="1" cellpadding="4" cellspacing="0" style="font-size:12">
<tr>
<td>Site Title:</td>
<td> <asp:Label ID="lblSiteTitle" runat="server" /></td>
</tr>
<tr>
<td>Site ID:</td>
<td> <asp:Label ID="lblSiteID" runat="server" /></td>
</tr>
<table>
</asp:Content>
<asp:Content ID="PageTitle" runat="server" contentplaceholderid="PlaceHolderPageTitle" >
Hello World
</asp:Content>
<asp:Content ID="PageTitleInTitleArea" runat="server" contentplaceholderid="PlaceHolderPageTitleInTitleArea" >
The Application Page of My First Feature
</asp:Content>
A la deuxième déclaration d'Assembly, il faut mettre ce qui est écrit dans reflector.
la partie <% @Page donne le langage, le fichier master page, et la classe de reference du code behind.
La première partie Content, va utiliser 2 labels qui vont accueillir l'ID et le titre du site.
La deuxième partie va change le titre de la page.
La troisième partie va inscrire le titre de la section principal.
Passons à la création du code behind
Pour créer le code behind, utilisons la classe qui est déjà créé, renommez la ApplicationPage.
Copiez ce code :
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Microsoft.SharePoint;
using Microsoft.SharePoint.WebControls;
namespace FirstFeature
{
public class ApplicationPage : LayoutsPageBase
{
//add control fields to match controls tags on .aspx page
protected Label lblSiteTitle;
protected Label lblSiteID;
protected override void OnLoad(EventArgs e)
{
//get current Site and Web
SPSite siteCollection = this.Site;
SPWeb site = this.Web;
//program against controls on .aspx page
lblSiteTitle.Text = site.Title;
lblSiteID.Text = site.ID.ToString().ToUpper();
}
}
}
En surchargeant la méthode OnLoad, on va éxécuter du code au chargement de la page.Ce bout de code, va écrire dans les labels, l'ID et le titre du site.
Compilez votre projet, puis lisez le prochain article.
Aucun commentaire:
Enregistrer un commentaire