May 2010 Blog Posts

Customizzare i risultati del nostro Sharepoint 2010 Search Engine!

Sicuramente una cosa che torna sempre carino da fare è customizzare la result page del nostro search engine. Prima di tutto, se non abbiamo un subsite search engine lo creiamo: Fatto questo, apriamo il Designer 2010 e andiamo su All Files e (personalmente lo trovo comodo) copiamo le web part utili della pagina results.aspx: E creiamo la pagina SearchResult.aspx : Adesso andiamo sui settings del nostro site e clicchiamo su Search settings: Modifichiamo l’url della pagina di result E...

Nascondere alcune aree di Sharepoint tramite il controllo SPSecurityTrimmedControl

Ditemi… a chi piace dare al nostro Anonymouse User la nostra ribbon bellissima!? A me non piace :-\ C’è un modo per evitare di togliere elementi utili nel back-office ma non farli visualizzare nel front-end. E questo è SPSecurityTrimmedControl. Ecco un esempio. Troviamo il nostro <div> della ribbon e inseriamo il controllo: <SharePoint:SPSecurityTrimmedControl runat="server" PermissionsString="AddAndCustomizePages"> <a id="HiddenAnchor" href="javascript:;" style="display:none;"></a> <SharePoint:DelegateControl runat="server" ControlId="GlobalNavigation"/> <div id="s4-ribbonrow" class="s4-pr s4-ribbonrowhidetitle"> <!-- .... --> </div> </SharePoint:SPSecurityTrimmedControl> La magia avviene grazie al PermissionsString. Per sapere tutti i PermissionsString a disposizione fate riferimento a: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spbasepermissions(v=office.14).aspx cips 0xc328a906, 0x8f6e, 0x4cdd, 0x83, 0x6d, 0xa1, 0x9a, 0x66,...

WCF RIA Services: Aggiungiamo un paio di controlli

Nel post precedente ottenevamo la lista di tutti gli utenti nel nostro database tramite la GetCustomer. In questo post aggiungeremo un paio di controlli per paginare e filtrare i nostri dati. Quindi torniamo al nostro bel designer e aggiungiamo un DataPager alla griglia creata quì. Inseriamo un nuovo controllo nella Toolbox (tasto dx –> Choose Item), cerchiamo e selezioniamo il DataPager: Adesso trasciniamolo dalla toolbox alla pagina: Settiamo il width in auto dalle proprietà. Torniamo sulla finestra Data Sources (vista nel...

Creare un modulo per spedire mail con InfoPath

Un paio di post fà è stato creato un modulo per spedire richieste di supporto tecnico usando semplicemente una Custom List Sharepoint. In questo post invece useremo InfoPath partendo da zero. Quindi apriamo InfoPath e selezioniamo Sharepoint List: Scegliamo il nostro server Sharepoint Diamo il nome alla nostra nuova lista E iniziamo a modellare l’aspetto di layout della tabella cliccando sulla tabella e dopo su Layout e aggiungiamo delle righe: Andiamo sotto Home e iniziamo ad inserire...

Creare una Custom List come modulo per spedire Mail

Ecco come creare una custom list in Sharepoint 2010 da utilizzare come modulo per spedire mail del nostro portale. Per prima cosa creeremo una Custom List che utilizzeremo come repository per le mail che gli utenti spediranno: Adesso, tramite il designer creiamo una nuova pagina ed inseriamo la nostra web part di tipo New Item Form e modifichiamo il testo alla sua sinistra Se volete validare i campi, vi consiglio di mettere del codice javascript nella vostra pagina… oppure usate InfoPath…………… bye 0x31d346be, 0x7cfc, 0x4fa2, 0x8e, 0xcb, 0xe9, 0x2, 0x3b,...

WCF RIA Services: Applicazione client

Nel post precedente abbiamo creato un service model per ottenere i dati dalla tabella Customer. In questo post vedremo di utilizzare i dati che otteniamo da questa entità tramite il metodo generato GetCustomers. Prima di usare questo metodo conviene applicare un paio di accorgimenti: public IQueryable<Customer> GetCustomer() { return this.ObjectContext.Customer.OrderBy(o => o.CustomerID).Take(10); } OrderBy ci servirà più avanti quando useremo il Pager mentre il Take ci serve per non far bombare il buffer del WCF. Innanzitutto vorrei farvi notare come, visualizzando tutti i files all’interno del nostro progetto client, troverete una directory Genetared_Code: Questo...

Bing e Sushi

In Microsoft la pensano come me 0xf3009ad6, 0xfdbe, 0x4598, 0x99, 0xb9, 0x82, 0xd0, 0xb0, 0xa2, 0x98, 0xf8 Rebitting Tags: OT

Custom list per visualizzare un elenco di announcements e una dispform custom per visualizzare un elemento.

Creiamo una lista custom per la visualizzazione dei nostri items in una lista di tipo announcements.   Una volta creata questa Data…WebPart, possiamo modificarne l’xslt in modo da fargli puntare ad un’altra pagina (per comodità io ho modificato direttamente l’xslt ma se dovete creare solamente un link potete farlo direttamente dal designer): A causa di un bug se provate a dichiarare la variabile in querystring come ID invece che NewsID, otterrete questo errore: http://support.microsoft.com/kb/972225 A questo punto creiamo la pagina DispNews e aggiungiamo un’altra Empty Data View per visualizzare un item. ...

Sharepoint 2010: Un nuovo portale con template Publishing da customizare

Mi sono trovato a dover customizzare una web application con template di tipo Publishing: Una volta creata la Web Application, ho avuto la necessità di creare una master page per le pagine che utilizzerò per gli utenti anonimi. Tanto per creare un pò di confusione abbiamo varie master page: La confusione non è sul numero di master page ma sui loro nomi. Di default non viene usata la default.master (dai dillo che l’avevi pensato!!!) ma la v4.master. La default.master viene usata per mantenere compatibilità con il...

WCF RIA Services: Data Models e Domain Service

Aggiungiamo, alla solution creata nel post precedente, un data model. Per l’esempio userò AdventureWorks. Ovviamente il data model risiederà nel middle-tier. Data Model: Per aggiungere il data model faremo click con il tasto destro sopra il progetto SilverlightApplicationPostExample.Web e selezioneremo l’item ADO.NET Entity Data Model: Chiamiamo l’item AdventureWorks e selezioniamo l’opzione Generate From Database. Selezioniamo/creaimo la connessione all’instanza dell’engine del nostro database: Andando avanti selezioniamo le tabelle Address, Customer e CustomerAddress. Clicchiamo su Finish. Il risultato sarà: ...

Sharepoint 2010: Abilitare l’accesso Anonymous

Per abilitare l’accesso Anonymous possiamo fare in due maniera: Vecchia maniera IIS Maniera Sharepoint (anche questa non tanto nuova, visto che lo facevamo anche con il 2007 :D ) Anyway… ecco i passi da fare nel secondo, semplice caso: Avviamo il Central Administrator –> Manage Web Applications –> Selezionare la web application –> Authentication Providers –> click su Default Abilitare l’anonymous nella finestra successiva ...

Dove Sharepoint 2010 (forse anche il 2007) e i DOCX salvano i metadati?

L’altro giorno ad un mio nuovo collega gli è stato chiesto da un cliente dove i metadati venissero salvati, perchè se li son ritrovati dentro il documento docx. Io credevo che il docx si portasse dietro solamente i metadati inseriti insieme al documento… ed invece “magia”; ecco un esempio. Aprite un docx scaricato dalla vostra document library in Sharepoint (la mia è stata modifica per test ed ho inserito un campo a scelta multipla di nome Scelta) e visualizzatene tutte le proprietà; ed ecco cosa si trova: mmm, rinominiamo il docx in zip, scompattiamo...

WCF RIA Services: Architecture

Iniziamo subito con il capire perchè dovremmo usare i WCF RIA Service. WCF RIA Services aiuta il programmatore nello sviluppo di applicazioni n-tier con client RIA, permettendogli di sviluppare e mantenere l’application logic spalmata tra il presentation tier e il middle tier: “To create the best user experience, you want your RIA client to be aware of the application logic that resides on the server, but you do not want to develop and maintain the application logic on both the presentation tier and the middle tier. RIA Services solves this problem by providing framework components, tools, and services...

MAF, MEF e Unity

MAF Welcome to the CodePlex site for the Managed Extensibility and Add-In Team. This site will be the home to both samples and tools designed to help you make the best use of the new System.AddIn features in the .Net FX v3.5. We'll continue to use our blog http://blogs.msdn.com/clraddins/ for information and discussion about our work, but from now on we'll be hosting our samples here for easier access. The initial focus will be on two things: Bringing over samples from the team blog to this site ...