• Home
  • Google Plus
  • Xing
  • RSS-Feed
Kategorien
Archiv
 
November 2011
M T W T F S S
« Oct   Feb »
 123456
78910111213
14151617181920
21222324252627
282930  

Der Stammtischphilosoph

Mit körpereigenen Drogen fröhlich durch die Welt…

Daily archives: November 14, 2011

Truncate für Sharepoint-Listen

November 14, 2011 at 4:27 pm | Entwicklung | Stammtischphilosoph

Wir alle wissen, dass einige elementare SQL-Tasks in SharePoint schlicht und einfach nicht funktionieren. Eines dieser Dinge ist das leeren von Listen. Das löschen einzelner Zeilen dauert eine Ewigkeit.

Aus diesem Grund habe ich eine Methode geschrieben, die eine Liste komplett löscht und mit dem gleichen Schema unter gleichem Namen neu erstellt, also im Endeffect ein TRUNC durchführt:

/// <summary>
/// Liste leeren
/// </summary>
/// <param name="web">aktuelles Web</param>
/// <param name="list">Liste</param>
public static void TruncateList(SPWeb web, SPList list)
{
string title = list.Title;
string description = list.Description;
SPListTemplateType template = list.BaseTemplate;

list.Title = string.Format("BACKUP_{0}", title);
list.Update();

// Neue erstellen:
Guid newListId = web.Lists.Add(title, description, template);
web.Update();
SPList newList = web.Lists[newListId];

// Felder übernehmen:
foreach (SPField field in list.Fields) {
if (!newList.Fields.ContainsFieldWithStaticName(field.StaticName))
{
newList.Fields.Add(field);
}
}
newList.Update();
foreach (string viewField in list.DefaultView.ViewFields.ToStringCollection())
{
newList.DefaultView.ViewFields.Add(viewField);
}
newList.DefaultView.Update();
// löschen alte Liste:
list.Delete();
}
GD Star Rating
loading...
One comment

© Der Stammtischphilosoph

|

Interpreted by DesignFalcon and mnfw. Powered by WordPress.

Top