Archive

Archive for the ‘Open XML’ Category

TechEd 2007: Develop a Community Solution with Visual Studio Tools for Office 3.0, Office Open XML File Formats and Windows SharePoint Services v3.0

November 8, 2007 Leave a comment

Offizielle Beschreibung

In this demo-only session we will build a restaurant community solution based on Windows SharePoint Services v3.0 and Office 2007 clients with Visual Studio 2008 in just 70 mins from scratch. You will learn how you can combine several 2007 Microsoft Office system technologies effectively for building professional solutions. Learn, how technologies such as SharePoint site templates and custom ASP.NET pages help you customizing the look and feel of your portal. See, how you can access information stored in custom XML data islands of Office Open XML packages placed in SharePoint document libraries by using the SharePoint object model and the System.IO.Packaging API. Finally you will learn, how you can build an Office-client that integrates with your portal through built-in and custom-developed SharePoint web services by leveraging the newest technologies introduced with Visual Studio 2008 Tools for Office. To get most out of this session you should be equipped with good .NET and basic ASP.NET, SharePoint and VSTO development know-how.

Vortragender: Mario Szpusta

Allgemein

In der Demo wird ein Word Formular verwendet um Informationen eines Restaurants aufzunehmen. Das word Formular wird in einer Doclib abgelegt. Für Word 2007 wird eine TaskPane mit WPF Controls erstellt welche das Durchsuchen der Doclib nach Restaurant ermöglicht. Benutzer ist in der Lage eine Einladungskarte für seine Freunde zu erstellen, in dem er das gewünschte Restaurant aus der Liste auswählt. Daten des Restaurants werden in das Doc übernommen.

Find xml in word document

· Get the root document

· Get relationships

· Go through the relationships, check the namespace of the related item

· Spfile.openbinarystream muss in memorystream umgewandelt werden, da word openxml einen stream braucht, indem es sich frei bewegen kann.

· Um das richtige package zu bekommen gibt es die hilfsklasse „PackUriHelper“

Custom Webservice

· Gründe für custom Webservice

o Es gibt kein Webservice von wss welches als Ergebnis das ges. Dokument zurückliefert

o Nicht alle wss Webservices sind interoperabel.

· Das Webservice analysiert die wss listen und erlaubt die suche über die Restaurants. Wird in einer Taskpane in word verwendet um eine Einladung zu erstellen.

· Bei der Methode Parameter [WebMethod (EnableSession=true)] – erlaubt weiter auth. Mechanismen und nicht nur Windows

· Das asmx des Webservices muss in das …12/isapi/ Verzeichnis kopiert werden (_vti_bin) Directory
in der _vti_bin ist das testing des Webservices nicht möglich.

· Dlls in das bin Verzeichnis oder in die gac

Ribbon in word

· Ist ein abgeschlossener Bereich.

· Das öffnen des taskpanes wird über die eventhandler bewerkstelligt.

TaskPane

· Um WPF Controls zu verwenden, muss ein ContainerControl WPF Host eingebaut werden.

· Properties werden in Properties.Settings.Default…. abgelegt. Genauer anschauen was das tut?

· Einfügen eines bildes : ctrl.range.inlineshape.

Using FormBase Auth in SharePoint

· Hier sei noch angemerkt, dass man nicht rein auf FDA umsteigen soll, da einige Sachen dann nicht funktionieren. Erweiterung des MOSS / WSS mit SharePoint Designer etc.
man sollte eine Zone als AD Zone belassen und eine weitere als FDA Zone deklarieren. Beide Zonen zeigen auf die gleichen Daten, nur der Zugang ist anders.

· Create Membership Diabase

· Configure conectionstrings (in der web.config der Webseite und der wss)

· Configure membership providers – in beiden web.config’s

o <membership defaultProvider=”RestaurantProvider”><provieders><add name=RestaurantProvieder ….>

o SharePoint central administration

§ Application management – authentication provider

§ Change from default to forms

§ Eintragen des Namen vom Provider welchen man zuvor konfiguriert hat

· Wenn man aus word auf SharePoint zugreifen will, muss man ein Cookie mitgeben

o Loginform

o Sharepoint hat ein Authentication.asmx welches das Cookie zurückliefert.

o Create coockiecontainer um mit Cookies zu arbeiten.

o Das auth..asmx liefert result. Dieses muss auf …NoError überprüft werden, erst dann das Cookie suchen

o Coockiecollection cookies=aservice.coockiecontainer.getcookies(new uri(Aservice.url))

o Um das eigene Service mit den Cookies verwenden zu können muss das eigene Service in das vti_bin Verzeichnis platziert werden.

ASP Seite um sich für die community anzumelden etc.

· Referenz auf die Masterpage (simple.master oder default.master)

· Asp:createuserwizard

· Nach dem registrieren der User müssen diese zu wss gruppen hinzugefügt werden.

· Asp Pages müssen unter 12templateslayouts (Pages mit source müssen hier liegen)

Tool: word Content control toolkit: erlaubt das verbinden von XML Daten in word Steuerelemente.

Fragen:

SharePoint extensions for vs 2008? Was wird das genau sein?

Web.ensureuser – genau anschauen was das tut

Wieso nicht infopath um Informationen des Restaurants aufzunehmen?

Advertisements
Categories: .NET, Open XML, TechEd, VSTO