I started playing around with .net 3.5 today. I wanted to take a look at the TimeZoneInfo class first, since that new class conflicted with a custom class I wrote for Property Center. I’m happy to say that the new MS class does everything that mine does, so I can migrate my code to use the MS TimeZoneUtil class in the future. They finally provide an easy way to iterate all timezones (listed in the current machine’s registry – which seems to be all current timezones in the world), not to mention easy ways to convert datetimes between each timezone. It factors in all of the rules related to daylight savings as well.
After that, I looked into linq to sql so that I can start playing with actual data in my sql database. I didn’t really feel like using the Object Relational Designer to generate the entity classes because truthfully… designers really don’t do it for me. They ship a commandline tool called SqlMetal that does what I wanted. If you have used subsonic’s generator, you’ll be a little disappointed with the options that SqlMetal provides. For example, I prefix my tables with pc_, but i don’t want that showing up in my object model. I couldn’t find a way to have sqlmetal ignore the table prefixes. It also generates one large file containing all classes, which is a little annoying, imo.
You can find more information on how to use SqlMetal at: http://msdn2.microsoft.com/en-us/library/bb386987(VS.90).aspx. And as a side note, SqlMetal.exe exists in C:WindowsMicrosoft.NetFramework3.5.