Sharepoint 2007 Form Based Authentication

Fant en virkelig god oversikt over hvordan man kan implementere og feilsøke flere forskjellige authentication providers som både kommer som standard i windows, men også endel andre. Deriblandt ADSF.

http://blogs.msdn.com/harsh/archive/2007/01/10/forms-based-authentication-in-moss.aspx

Update et liste element uten å lage ny versjon

Normalt er versjonshåntering og historikk et stort salgsargument for å ta i bruk SharePoint, men det er ikke alltid man ønsker å lage en ny versjon av et element i en liste.

Normalt sett bruker jeg følgende kode for å oppdatere og å lage en ny versjon av liste elementet:

SPList list = web.Lists[«myList»];
SPListItem item = list.Items[0];

item[«myField»] = «my value»;

item.Update();
list.Update();

Men nå skulle oppdatere et element uten å lage en ny versjon, ble jeg litt svar skyldig.
Etter litt frem og tilbake på msdn, fant jeg frem til en nydelig funksjon som er tilgjengelig på liste elementet i SharePoint.

SPList list = web.Lists[«myList»];
SPListItem item = list.Items[0];

item[«myField»] = «my value»;

item.SystemUpdate(false);
list.Update();

Ved å bruke SystemUpdate funksjonen oppdaterer ikke SharePoint liste elementet sine Modified felter (Modified, Modified by osv.) ved å sende inn false, som argument til funksjonen. Som standard sendes det inn true, og da opprettes det nye versjoner av elementet.

Det eneste som deretter gjenstod var å redigere workflow’en slik at det nye elementet i listen automatisk godkjent for publisering.

Value does not fall within the expected range

Denne SharePoint feilmeldingen ender man veldig fort opp med når man skal hente ut verdier fra lister.

Det aller første du bør trippelsjekke er at du reffererer til riktig felt. Alle feltnavn er case sensitive.
Gå til Listen du ønsker å bruke, klikk deg inn på List settings, og klikk på alle feltene du ønsker å bruke.
I url’en du da kommer til, vil kolonnens egentlige og virkelige navn vises. Bruk dette navnet i koden.

Når du ellers henter ut verdier fra lister, er det veldig fornuftig å bruke foreach løkker. Da ungår man å reffere til kolonner eller elementer som ikke eksisterer.