kort variant av if-else
Inget speciellt egentligen med detta men vill skriva upp det här för att jag brukar glömma det. Det är samma syntax som i många andra språk:
bool value = "dit" == "dat" ? true : false;
Motsvarar:
bool value;
if ("dit" == "dat")
{
value = true;
}
else
{
value = false;
}
join i LINQ
LINQ är ett kraftfullt verktyg. Det som kan vara lite krångligt är join. Men om man gör rätt blir det bra. Låt oss titta på det sql-exemplet:
SELECT s.adAccount
FROM Staff s join StaffOnCourseInstance si
ON s.uid = si.uid
WHERE si.CourseInstanceId = 1435
För att köra motsvarande LINQ måste vi vara väldigt noga med on:
var testQuery = (from s in ctx.Staffs
join si in ctx.StaffOnCourseInstances
on s.uid equals si.uid
where si.CourseInstanceId == 1435
select new { s.adAccount });
```Edit 20101031: Det finns ett smidigare sätt att komma åt information i relaterade tabeller. Se mitt inlägg från 20101031 om [LINQ och foreign keys](https://sharepointkunskap.wordpress.com/2010/10/31/komma-at-andra-tabeller-via-foreign-keys-i-linq/).
keyword using {}
Ibland när man vill att ett objekt som man jobbar med är tungt och man vill slänga den direkt när man är färdig, så kan man använda keyword using…
public void Test()
{
using (SPweb web = site.OpenWeb("blabla")
{
//gör något och släng SPWeb-objektet
}
//.... metoden fortsätter
}
Men de objekten man använder i using, måste implementera interface IDisposable. Försök med using. Visual Studio säger ifrån om objektet av den typen inte implementerar IDisposable.
String.IsNullOrEmpty
I C# kan man testa om en sträng är null eller tom på ett enkelt sätt. I stället för att köra så:
string test;...
if (**test !=null && test != ""**)
{
//gör något.
}
Använder man en statisk metod String.IsNullOrEmpty(string value):
string test;...
if(**!String.IsNullOrEmtpy(test)**)
{
//do something
}