SPMetal – weil es rockt

Wer Linq2SharePoint verwenden möchte kommt an SPMetal nicht vorbei, daher hier eine kurze SPMetal-Einführung.

SPMetal, ein kleines Tool, mit einer unglaublich großen Wirkung :-)

SPMetal erstellt Entityklassen, die den Zugriff auf die SharePoint ContentDB unter Verwendung von Linq2SharePoint ermöglichen. Finden kann man das kleine Helferlein im 14 hives unter bin

%commonprogramfiles%\Microsoft Shared\web server extensions\14\bin

SPMetal kann über die einige wenige Konsolen-Parameter konfiguriert werden. Wer das xsd Tool zur Generierung von Entityklassen aus XML Schemata verwendet hat, wird sich auch mit der API von SPMetal schnell anfreunden können.

Anstatt alle Parameter aufzulisten hier einfach ein paar praktische Beispielscripte

 

  • Allgemeine C# Entityklassen generieren
    • SPMetal /web:http://mySP2010Server/DeveloperSite /code:DeveloperSite.cs
  • Allgemeine VisualBasic Entityklassen generieren
    • SPMetal /web:http://mySP2010Server/DeveloperSite /code:DeveloperSite.vb
  • C# Klassen für einen bestimmten Namespace generieren
    • SPMetal /web:http://mySP2010Server/DeveloperSite /code:DeveloperSite.cs /namespace:MySolution.ExternalDataSources
  • C# Klassen generieren die mit dem Client Object Model lauffähig sind
    • SPMetal /web:http://mySP2010Server/DeveloperSite /code:DeveloperSite.cs /useremoteapi
  • C# Klassen im Context eines anderen Users generieren
    • SPMetal /web:http://mySP2010Server/DeveloperSite /code:DeveloperSite.cs /user:foo /password:bar

 

Klassen die mit SPMetal für das Client Object Model generiert wurden dürfen keine Lookup Felder beinhalten, da diese nicht vom Client Object Model supported werden!

Analog zum xsd-Tool sind auch die von SPMetal generierten Klassen als “partial” definiert, so dass eigene Erweiterungen zu den Entities bequem ausgelagert werden können.

Es empfiehlt sich den SPMetal-Aufruf als PreBuild Ereignis in die Visual Studio Solution aufzunehmen, damit die generierten Proxies auch immer aktuell sind. 

 

DotNetKicks-DE Image
Published Dienstag, 20. Oktober 2009 22:09 von ThorstenHans
Abgelegt unter: , , ,

Kommentare

# Twitter Trackbacks for SPMetal ??? weil es rockt - .Net rocks [dotnet-forum.de] on Topsy.com

Ping Antwort von  Twitter Trackbacks for                 SPMetal ??? weil es rockt - .Net rocks         [dotnet-forum.de]        on Topsy.com

# SharePoint 2010: Linq2SharePoint

Dienstag, 3. November 2009 22:28 von .NET rocks

Linq gehört mittlerweile zu den Basics in der .NET Welt, im SharePoint-Umfeld kann sich Linq erst mit

Kommentar abgeben

(verpflichtend) 
(verpflichtend) 
(optional)
(verpflichtend)