Kuidas laiendada SharePoint’i aplikatsiooni

13.12.2007  |  Gunnar

Kuidas laiendada SharePoint'i aplikatsiooni SharePoint Mõnikord on vaja laiendada SharePoint'i aplikatsiooni ning lisada sinna omapoolset funktsionaalsust. Kuigi selline vajadus on haruldane, on selle tekkimisel siiski hea teada, kuidas laiendamine võiks välja näha. Kui selle näitega muud pole peale hakata, siis vähemasti on võimalik selle abil tutvuda SharePoint'i aplikatsioonide hingeelu ja toimimisega.

SharePoint'i aplikatsioon on nagu tavaline ASP.NET'i aplikatsioon. Kuskil asub failisüsteemis tema juurkataloog, kus on olemas aplikatsiooni jaoks vajalikud failid. Üks neist failidest, mille me sealt eest leiame, on Global.asax. Piilume sinna sisse korra.

<%@ Assembly Name="Microsoft.SharePoint"%>
<%@ Application Language="C#" Inherits="Microsoft.SharePoint.ApplicationRuntime.SPHttpApplication" %>

Selle asemele kirjutame oma rakenduse klassi nime koos kõige vajalikuga.

<%@ Assembly Name="SPApp"%>
<%@ Application Language="C#" Inherits="SPApp.MyApplication" %>

Nagu näeme, on siin tegemist punktiga, kuhu saaksime istutada meile sobiva loogika. Vaja on vaid klassi, mille avalik liides on sama, mis meile vastu vaataval klassil. Õnneks pole sellel klassil sealed parameetrit ning me võime oma klassi pärida sellest. Midagi sellist siis.

using System;
using Microsoft.SharePoint.ApplicationRuntime;

namespace SPApp
{
    public class MyApplication : SPHttpApplication
    {
        public MyApplication()
        {
            // initsialiseerime klassi
            // haagime siin sündmused külge
        }
    }
}

Enne kui meie rakendus ametlikult tööle hakkab, peame ta kompileerima ning paigutama näiteks SharePoint'i veebi juurkataloogi alamkataloogi bin. Faili web.config peame lisama safe assembly'te blokki juurde rea meie aplikatsiooni kohta. Vastasel korral SharePoint tööle ei hakka.

Kui see on tehtud, siis olemegi omadega mäel ning võime hakata oma rakenduse klassi arendama.

Kommenteeri

sulge
Saada link e-postiga

© DT 2013 | Creative Commons Attribution-Noncommercial 3.0 License | WordPress