Thursday, June 26, 2008

Linq - ToList()

När man jobbar med LINQ har man ofta redan en generisk lista av något slag, eftersom man sällan jobbar med objekt som direkt baseras på IEnumerable. När man jobbar med dessa i LINQ vill man ofta få ut just en List (eller List(Of T) VB) och inte en lista av IEnumerable.
I dessa fall är det väldigt enkelt att göra om denna till en hårt typad List genom att använda sig av .ToList() metoden:

protected void SortItems()
{
List<MyObj> items = new List<
MyObj>();
var i = (from o in items orderby o.id select o).ToList();
}


Protected Sub SortItems()
Dim i As List(Of DAL.Base.Journal) = (From items In ItemGroup.Items _
Order By items.Id Select items).ToList()
ItemGroup.Items = i
End Sub

Wednesday, June 18, 2008

Markus & Patrick vs. Rudde 1-0

Så är det avgjort. Efter hårda duster i dragndrop-träsket ser det ut som att vi lyckats.

Patrick kan nu stoltsera med en riktigt fet funktion för att dragga och droppa puffar i vårt intranätprojekt. Trots Ruddes försök att göra livet surare genom sina "fungerande fixar". :)

Med hjälp av MooTools som ramverk så har vi en startsida som är helt personifierbar, med både statiskt och flyttbart content. Vissa puffar i sig har dessutom möjlighet till egen anpassning vad gäller innehåll och funktion. Snyggt samarbete mellan front end och server side ger användaren en upplevelse utöver det vanliga, som även är användbart och inte bara bling-bling.

Nu håller vi bara tummarna för ett svenskt avancemang i fotbolls-em!

Tuesday, June 17, 2008

Yes!

Så kom äntligen leveransen från Dustin, Nansen kan nu stoltsera med ett 3st 8 portars switchar som pryder våra skrivbord. Kanske blir det så att internet går lite bättre på kontoret. I samma leverans kom även de 40 uppladdningsbara AA batterierna som våra batterislukande tangentbord kräver.

Monday, June 16, 2008

Tilldela sidrättigheter programmatiskt i EpiServer 5

För att tilldela en viss användare utökade rättigheter på en sida i Epi, använd Access Control List egenskapen i PageData objektet (page.ACL) .

Nedanstående exempel skapar upp ett AccessControlEntry för ett visst användarnamn och lägger till rättigheten Edit.
ACEn adderas sedan till sidan. Noter att sidan inte behöver skapas i en ny version för att detta ska fungera.

AccessControlEntry ace = new AccessControlEntry(“username”, AccessLevel.Edit ,SecurityEntityType.User);
myPage.ACL.Add(ace);
myPage.ACL.Save();


Det finns dock ett par viktiga saker att tänka på.

Konstruktorn till AccessControlEntry kan valfritt överladdas med SecurityEntityType .[user/group]. Anges inte denna överladdning är standardbeteendet group. Det besynnerliga med detta är att Epi kommer att acceptera din kod även om gruppen inte finns.

Om du försöker sätta rättigheterna för en användare (utan att ange SecurityEntityType) och sedan loggar in Edit som administratör kommer du se följande fenomen:


Sidan som du tilldelade rättigheterna har fått en ny grupp med rättigheter tilldelat sig. Gruppen har samma namn som din användare . Gruppen har absolut ingen koppling till din användare och söker du efter gruppen kommer du märka att den faktisk inte existerar över huvud taget. Det enda sättet du kan se att det faktisk är en grupprättighet är på ikonen framför användarnamnet.

Om du vill ange fler rättigheter till sidan kan du enkelt göra detta som i exemplet nedan:
AccessControlEntry ace = new AccessControlEntry(“username”, AccessLevel.Create ¦ AccessLevel.Delete ¦ AccessLevel.Edit ¦ AccessLevel.Publish
¦ AccessLevel.Read,SecurityEntityType.User);


Det går inte att tilldela rättigheterna fler än en gång. Om du behöver sätt om rättigheterna på en sida måste sidans ACL rensas med clear kommandot:
myPage.ACL.clear();

Thursday, June 12, 2008

hur man gör texteditorn i epi till en textarea

ibland vill man i episerver göra om texteditorn till en vanlig textarea.
det är ganska enkelt att fixa till genom att bara kryssa ur alla buttons som ska visas i editorn.
då ska den bli en vanlig hederlig textarea istället.
(här kan fråga sig varför det inte finns en enda checkbox som tar bort alla dessa egenskaper direkt)

meeen, ibland kan det hända att även fast man kryssar ur allt så visas ändå den där editorn istället för den önskade textarean!
mycket underligt...

många har nog slitit sitt vackra hår här och inte fattat ett smack.
men, er räddare i nöden, rewdboy på nansen, kan tala om att hjälpen är nära!

i admin under fliken konfig->säkerhet finns ett verktyg som heter "åtkomst till funktioner"
klicka där och sen in på ""alla funktioner tillgängliga i editorn"
klicka på knappen "ändra" och ta sen bort alla grupper.
då kommer editorn att bete sig som man faktiskt vill att den ska bete sig

Thursday, June 5, 2008

kärlek enligt ett C#-skägg

såhär vill ett av ärkeskäggen på kontoret förklara sitt förhållande till C#

I code in C#, because I love technology. If I coded in VB - it would be just for the paycheck (and I would feel like I had stepped back in time).

citatet taget från en av hans favoritinlägg på geekswithblogs.net
http://geekswithblogs.net/shartzog/archive/2005/02/10/22638.aspx

jag tänker inte outa honom öppet såhär på nansenbloggen men hans namn börjar på K

Lite RegExp

Vill bara lägga in en liten bokmärke för alla interesserade.
Regexp kommer nog alltid att vara något som man behöver använda lite då och då men ändå inte så pass ofta att man hinner lära sig det ordentligt för att komma ihåg det till nästa gång man ska använda det.
Så nu tänkte jag lägga till några av otaliga regexp länkar som man alltid letar fram.

Monday, June 2, 2008

en bättre måndag än på länge

mitt första blogginlägg här på nansenbloggen

vill bara säga att veckan börjar perfekt här på nansen.
det är fint väder, inte ett moln på himlen och vi har fri sikt ut genom fönstret utan nån störande oceanångare parkerad utanför som stör vår havsutsikt. förra veckan hade vi ju två bautabåtar som stod i vägen. men nu så ser det bra ut.
turisterna verkar inte fatta att vi pröjsar för havsutsikten...
kajsa meckade en fin frulle som vanligt med goda mackor, kaffe och juice
och idag till lunch så ska vi äta thaimat....emma bestämde det. då blir det väl så..

förhoppningsvis så meckar mackans fruga en god bakelse som vi kan käka på fredag, flåt...torsdag.
vi e ju lediga på fredag.