SharePoint LiveTemplates für ReSharper

Eigentlich sollte jeder .NET Entwickler JetBrains ReSharper kennen und verwenden. Eine Umfrage von Golo Roden im Rahmen des .NET Day Franken bestätigte dies sogar letzte Woche. (Zutreffend logischerweise nur für Anwesende seiner Session).

Ein nettes Feature des ReSharper’s sind die LiveTemplates, mit deren Hilfe kann man Shortcuts definieren, die dann später im Codeeditor verwendet werden können und ein definiertes Stück SourceCode an der gewünschten Stelle einfügen.

Gerade in der SharePoint Entwicklung ist es so, dass man bestimmte Ausdrücke immer wieder verwenden muss. Nahezu in jeder Solution findet man ähnliche Konstrukte wie

using(SPSite site = new SPSite(siteUrl))
{
  using(SPWeb web = site.OpenWeb(webUrl))
  {
  // ...
  }
}

Hier mal ein paar meiner LiveTemplates die ich im SharePoint Context verwende. Eventuell kann der ein oder andere diese ja gebrauchen

 

  • spsite
    • using von SPSite und SPWeb
  • GetProp
    • Property aus dem SPWeb PropertyBag auslesen
  • gp
    • übergeordnetes (Parent)SPListItem auslesen
  • elevated
    • Delegat zur Ausführung von Code mit administrativen Rechten

Hier jeweils der C# Output

spsite

String siteUrl = "siteUrl";
String webUrl = "webUrl";
using (Microsoft.SharePoint.SPSite site = new Microsoft.SharePoint.SPSite(siteUrl))
{
   using (Microsoft.SharePoint.SPWeb web = site.OpenWeb(webUrl))
  {
  }
}

GetProp

String propertyContent = String.Empty;
Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(delegate()
{
  using (SPSite secureSite = new SPSite(siteUrl))
  {
    using (SPWeb web = secureSite.OpenWeb(webUrl))
    {
        if (web.Properties.ContainsKey(propertyName))
           propertyContent = web.Properties[propertyName];
    }
  }
});

 

gp

 Microsoft.SharePoint.SPListItem parentListItem = null;
 try
 {
     int lastIndex = currentItem.Url.LastIndexOf('/');
     String url = currentItem.Web.Url + "/" + currentItem.Url.Substring(0, lastIndex);
     Microsoft.SharePoint.SPFolder folder = currentItem.Web.GetFolder(url);
     parentListItem = folder.Item;
 }
 catch (Exception)
 {
     // No parent found...
     // parentListItem will still be null    
 }

 

elevated

Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(delegate()
{
});

 

Download

Ich habe die ReSharper LiveTemplates als XML exportiert, hier könnt ihr diese downloaden.

 

 

Ich werde in Zukunft noch weitere LiveTemplates zu SharePoint hier publizieren, von daher lohnt es sich von Zeit zu Zeit mal vorbeizuschauen. :)

 

Technorati-Tags: ,,
DotNetKicks-DE Image
Published Donnerstag, 1. Juli 2010 15:39 von ThorstenHans
Abgelegt unter: , ,

Kommentare

# SharePoint LiveTemplates für ReSharper

Freitag, 2. Juli 2010 09:56 von SharePoint Mirror

Eigentlich sollte jeder .NET Entwickler JetBrains ReSharper kennen und verwenden. Eine Umfrage von Golo

# SharePoint Kaffeetasse 188

Freitag, 2. Juli 2010 10:05 von Michael Greth [SharePoint MVP]

PowerPivot PowerPivot-Übersicht für IT-Administratoren   Was ist PowerPivot für SharePoint?  

Kommentar abgeben

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