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 e cerchiamo Scelta:
Mmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmmm
adesso capisco xchè i docx pesano un casino!!!
Enjoy
0x93920ba3, 0xd593, 0x4621, 0x84, 0xf2, 0x23, 0xae, 0x80, 0x69, 0x66, 0xc9
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 that make the application logic on the server available to the RIA client without requiring you to manually duplicate that programming logic. You can create a RIA client that is aware of business rules and know that the client is automatically updated with latest middle tier logic every time that the solution is re-compiled.”
I RIA Services generano il codice necessario affinchè la nostra applicazione client sia collegata con il middle-tier; in più il framework mette a disposizione dello sviluppatore i servizi più comuni utilizzati in questo tipo di applicazioni (autenticazione, utenza etc).
I RIA Services espongono i dati dal progetto server verso i progetti client tramite un domain services. Ogni domain service è servizio WCF.
Creiamo un nuovo progetto Silverlight Business Application:
La solution creata avrà 2 progetti:
Il progetto SilverlightApplicationPostExample.Web per il server e il SilverlightApplicationPostExample per il client.
Entrambi i progetti presentano già un bel pò di item che vedremo un pò per volta.
To be continue…
0xf812b58b, 0xbf3c, 0x4eec, 0x88, 0x2, 0xc2, 0x70, 0xf1, 0xb1, 0xca, 0xff
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
- The release of the Pipeline Builder tool
For more information on our work please see our additional resources page.
MEF
Application requirements change frequently and software is constantly evolving. As a result, such applications often become monolithic making it difficult to add new functionality. The Managed Extensibility Framework (MEF) is a new library in .NET Framework 4.0 that addresses this problem by simplifying the design of extensible applications and components.
Disclaimer: MEF is in development. The source available on this site, does not reflect the final state of the product, it is a preview of what will be shipping in the framework in the future. We welcome any feedback you have on your experience.
Unity
Project Description
The Unity Application Block (Unity) is a lightweight extensible dependency injection container with support for constructor, property, and method call injection.
Unity addresses the issues faced by developers engaged in component-based software engineering. Modern business applications consist of custom business objects and components that perform specific or generic tasks within the application, in addition to components that individually address cross cutting concerns such as logging, authentication, authorization, caching, and exception handling.
The key to successfully building such applications is to achieve a decoupled or very loosely coupled design. Loosely coupled applications are more flexible and easier to maintain. They are also easier to test during development. You can mock up shims (lightweight mock implementations) of objects that have strong concrete dependencies; such as database connections, network connections, ERP connections, and rich user interface components.
Dependency injection is a prime technique for building loosely coupled applications. It provides ways to handle the dependencies between objects. For example, an object that processes customer information may depend on other objects that access the data store, validate the information, and check that the user is authorized to perform updates. Dependency injection techniques can ensure that the customer class correctly instantiates and populates all of these objects, especially where the dependencies may be abstract.
0x67441293, 0x298f, 0x4da0, 0x80, 0x2a, 0xf, 0x14, 0x2b, 0xde, 0xcc, 0x2a
WCF RIA Services introduction
Microsoft WCF RIA Services semplifica la creazione di applicazioni Silverlight n-tier (purtroppo non esistono per WPF… spero ancora per poco :( )
Spero di riuscire a scrivere, con cadenza settimanle, dei post di esempio su come si usano e i vantaggi che danno.
Per far ciò mi aiuterò con un pò di esperienza diretta e con i video che ho trovato quì e lì per la rete.
Per maggiori informazioni controllate il seguente link:
http://www.silverlight.net/getstarted/riaservices/
Nel frattempo vi consiglio di seguire i seguenti passi per installare i RIA Services:
Download and Install
-
Install WCF RIA Services for Silverlight 4 or Silverlight 3
Silverlight 4 — and Visual Studio 2010
- Install WCF RIA Services RC 2 for Visual Studio 2010
- Install the WCF RIA Services Toolkit
- If you already have the Silverlight 4 Tools and Visual Studio 2010 installed you can download WCF Ria Services RC 2 directly
0xe7143fd8, 0xde6a, 0x4f7b, 0xb7, 0x53, 0xe0, 0x98, 0x71, 0x3e, 0x98, 0x57
Accelerate Your Development with Microsoft Enterprise Library 5.0
“Microsoft patterns & practices announced availability of the next major release of Microsoft Enterprise Library. This collection of reusable software components is designed to assist software developers with common enterprise development challenges. Get it while it's hot!”
Ovvero: sono sta pubblicate le Microsoft Enterprise Library 5… figooooooooooooo
0x92dde2d6, 0x5ef2, 0x4199, 0x92, 0x3a, 0x11, 0x22, 0xbe, 0x47, 0xb5, 0x1
Quando si debugga - DebuggerBrowsableAttribute Attribute
C’è poco da fare, una delle cose che trovo più utile fare quando scrivo una classe è utilizzare il decoratore DebuggerBrowsableAttribute per visualizzare/non visualizzare tutto ciò che mi servirà, appunto, in fase di debug:
[DebuggerBrowsableAttribute(DebuggerBrowsableState.Never)] private string _documentName; ////// /// //[Required(true)] //[MaxLength(100)] public virtual string DocumentName { get { return _documentName; } set { if (_documentName != value) { _documentName = value; //FirePropertyChanagedEvent("DocumentName"); } } }
Dal debugger sparirà la variabile decorata e vedrete solamente la proprietà. ottimo no?
0x696b10af, 0xdc1f, 0x42b4, 0xae, 0xbf, 0x88, 0x58, 0x7, 0x2, 0xfd, 0xf1
SketchFlow nella vita reale
In questa settimana ho lavorato con un cliente sul porting di un’applicazione excel a wpf :)
Abbiamo affrontato vari problemi di deploy, architetturali, ect; ma, la chiave di volta, era far percepire agli utenti/acquirenti il vantaggio del passaggio ad un nuovo applicativo, dove la UX deve essere altamente spinta e simil videogioco.
Poter far apprezzare quello che sarà il prodotto una volta finito tramite un documento Word non è per nulla facile; anzi oserei dire alquanto difficile.
Tramite Microsoft SketchFlow sono riuscito, in poche ore di lavoro, di dare del valore aggiunto al documento tecnico con il quale ho portato avanti la proposta.
Ha fatto veramente colpo e, c’è da dire, che lo style usato da SketchFlow non è per nulla male… anzi!!!!!!
0x7d442565, 0x4c5b, 0x4c80, 0xa3, 0x86, 0x48, 0x3c, 0xd8, 0x94, 0xa3, 0x8
WCF RIA Services DomainDataSource Filters and Parameters
Adesso è chiaro!!!!!
La classe ControlParameter non esiste più… ma allora ditelo!!!!!!!!!!!
http://jeffhandley.com/archive/2010/03/15/filters-parameters.aspx
0x9d773961, 0xe7dd, 0x45f3, 0xa9, 0xc1, 0xc5, 0x5, 0x8b, 0xce, 0xd4, 0x40
Cambiare la lingua di una Site Collection già esistente
Se avete creato una Site Collection in Inglese (per esempio) e vorreste adesso portare tutto in italiano il lavoro da fare è altamente rischio.
Personalmente preferisco tenere tutto in inglese e lavorare di design dove serve.
Se, cmq, volete fare una prova, provate a cambiare il valore Language della tabella Webs del vostro database dei contentuti della vostra web application.
In questa pagina avete l’elenco di tutte le lingue supportate: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splanguage.lcid.aspx
Ovviamente dovete aver installato il language pack relativo.
Dopo aver fatto la modifica vi mancheranno javascript e immagini presenti cmq nella directory inglese, che trovate sotto la directory dei contenuti di Sharepoint.
Ripeto... Non vi consiglio di farlo
Ma a mali estremi…
0x328b4f69, 0x1898, 0x407e, 0x90, 0x50, 0x76, 0x37, 0x27, 0xc3, 0x68, 0xee
Statistics