lunedì 22 agosto 2011

Azure & Sharepoint 2010

Windows Azure è proposto da Microsoft come sistema operativo per il cloud, la piattaforma permette autenticazione, storage la collaborazione ecc ecc...

Vediamo come possiamo creare un DB SQL Azure e come esporre i dati tramite interfaccia Microsoft Sharepoint 2010.



Partiamo
quindi con la creazione del nuovo database utilizzando l’interfaccia
web, facendo login sul portale di Windows Azure all’indirizzo
https://windows.azure.com con le nostre credenziali.
Una
volta entrati, scegliamo la voce “Database” dal menu di sinistra, poi
l’opzione “Create” dalla barra dei Ribbon posizionata nella parte alta
della pagina ed inseriamo il nome che avrà la nostra nuova base di dati.




Dobbiamo creare le regole di accesso al DB (per non aver problemi in fase di test possiamo selezionare il flag “Allow other Windows Azure services to access this server” ed inserire il range 0.0.0.0 – 255.255.255.255)

Abbiamo cosi creato un DB vuoto e possiamo ora creare una tabella tramite l'utilizzo (SQL Server 2008 R2 Management Studio).

L'accesso al DB è le normali attività che possiamo eseguire, sono le stesse che possiamo eseguire usando un db installato su un SQL server classico.


Riferimenti:

Link








Sharepoint OnLine - Articolo

Facciamo un pò di chiarezza su sharepoint online.
Ottimo articolo di Chris Mayo, dove potete anche trovare un esempio:

Link

Buona lettura.

MVP Pattern - Sharepoint webpart

Ottimo articolo in cui viene mostrato come creare una webpart usando un pattern Model-View-Presenter:

Link 1

Link 2

Link 3

Qui trovate una guida, anzi una gran libro:

SharePointGuidance2010.pdf

Good...!!!!

Sviluppi WCF REST (sharepoint)

E' da un bel pò che non scrivo un post, un pò impegni di lavoro un pò pochi argomenti nuovi.
Ultimamente mi è capitato di dover sviluppare per un cliente un servizio WCF Rest, da utilizzare in un applicazione mobile sotto sharepoint.
Lo sviluppo non è molto differente da un classico servizio WCF, serve solo un pò di accuratezza.

come prima cosa creiamo un progetto sharepoint (in Visual studio 2010)


Inseriamo nel progetto un riferimento alla Cartella "ISAPI" di sharepoint.
Cliccando con il tasto destro sul progetto come da figura:



A questo punto non ci resta che creare il nostro servizio.
Nella cartella "ISAPI" sono stati inseriti 2 file:
1. AccessList.svc
2. Web.config

AccessList.svc:

<%@ ServiceHost Debug="true" Language="C#" Service="[NameSpace].AccessList, [NameSpace], Version=1.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxx" CodeBehind="AccessList.cs"
Factory="Microsoft.SharePoint.Client.Services.MultipleBaseAddressDataServiceHostFactory, Microsoft.SharePoint.Client.ServerRuntime, Version=14.0.0.0, Culture=neutral, PublicKeyToken=xxxxxx"  %>

Microsoft.SharePoint.Client.Services.MultipleBaseAddressDataServiceHostFactory (utilizzare il REST)

Web.config:

<?xml version="1.0"?>
<configuration>
  <system.serviceModel>

    <!-- we need this to enable session -->
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
    <behaviors>
      <endpointBehaviors>

        <!-- our configuration for rest relies on web http -->
        <behavior name="RestBehavior">
          <webHttp />
        </behavior>

      </endpointBehaviors>
    </behaviors>
    <bindings>
      <webHttpBinding>

        <!-- a selection of security bindings that you can use in the service registration below-->
        <binding name="WindowsAuthenticationBasicHttpBinding">
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Ntlm" />
          </security>
        </binding>
        <binding name="NoSecurityHttpBinding">
          <security mode="None">
            <transport clientCredentialType="None" />
          </security>
        </binding>

      </webHttpBinding>
    </bindings>
    <services>

      <!-- register our wcf service -->
      <service name="[NameSpace].AccessListBehavior" >
        <endpoint address=""
                  binding="webHttpBinding"
                   behaviorConfiguration="RestBehavior"
                  contract="[NameSpace].IAccessList"
                  bindingConfiguration="NoSecurityHttpBinding">
        </endpoint>
      </service>

    </services>
  </system.serviceModel>
</configuration>

nel web.config si occupa di esporre il servizio.

Nel file AccessList.cs:

        [ServiceBehavior]
        [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
        public class AccessList : IAccessList
       {
             SPList oList;
             string _CurrentURL = string.Empty;
             public System.Collections.Generic.List<entry> GetUFList(string list, ...
             {
                ...
             }
       }

viene scitto il codice che si occupa di erogare il servizio vero e proprio.

Nel file IAccessList.cs:

è presente il contract del servizio:

        [ServiceContract]
        public interface IAccessList
        {
            [OperationContract]
            [WebGet(ResponseFormat = WebMessageFormat.Xml, BodyStyle = WebMessageBodyStyle.Bare]
             public System.Collections.Generic.List<entry> GetUFList(string list, ... )

Facciamo il deploy sul server Sharepoint, a questo punto il servizio può essere richiamato nel seguente modo:

http://[Server]:[Port]/_vti_bin/listaccess/accesslist.svc/

Approfondimenti:
http://msdn.microsoft.com/it-it/magazine/dd315413.aspx

Overflow Sharepoint Scroolbar

Ottimo articolo scritto da un mio collega:

Vai Al Blog

Nuove certificazioni microsoft


- Exam 70-573: TS: Microsoft SharePoint 2010, Application Development
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-573

- Exam 70-576: PRO: Designing and Developing Microsoft SharePoint 2010 Applications
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-576

- Exam 70-667: TS: Microsoft SharePoint 2010, Configuring
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-667

- Exam 70-668: PRO: Microsoft SharePoint 2010, Administrator
http://www.microsoft.com/learning/en/us/Exam.aspx?ID=70-668