Prüfen ob eine Datei bereits vorhanden ist

Die Abfrage, ob eine Datei in einer bestimmten Site existiert, dürften schon einige SharePoint-Programmierer implementiert haben. Es gibt viele Wege wie man zum gewünschten Ergebnis kommt, von einer Schleife über alle möglichen Folder bis zur Query-Abfrage über das SPQuery-Objekt ist alles möglich. Ich bin nun aus einer aktuellen Aufgabe auf die vermutlich kürzeste und einfachste gestoßen:


Im Gegensatz zum SPFileCollection-Objekt verfügt das SPFile-Objekt über eine Eigenschaft Exists, die über ein boolean-Wert über das Vorhandensein einer Datei Auskunft gibt. Diese Herangehensweise ist eigentlich unlogisch, da ein SPFile-Objekt in der Regel eine vorhandene Datei repräsentiert. Die GetFile()-Methode eines SPWeb-Objekts liefert aber das gewünschte SPFile-Objekt, auch wenn die per Parameter übergebene Url keine Datei zurückliefert. Damit kann man nun erfolgreich eine Exists-Abfrage verknüpfen:


if (web.GetFile(fileUrl).Exists)
{
SPFile file = web.GetFile(fileUrl);
}
else
{
//die Datei ist nicht vorhanden
}

Einen Kommentar schreiben