September's meeting of the Albury/Wodonga .NET User Group was all about new features in Visual Studio 2008 and the .NET framework 3.5 - specifically LINQ. Andrew led us through beta 2 of VS2008, giving a great demo of automatic properties, object initialization, extension methods, type inference, anonymous types ... the works!

Of interest to me was the LINQ to SQL stuff. The visual designer for LINQ classes looks really solid. It felt like you'd be much more confident messing with it than you would the typed DataSet designer. I don't know about you, dear reader, but I always have livestock ready to sacrifice to the gods of Visual Studio when I have to modify a typed DataSet. I never quite know whether the changes will have an adverse affect.

One thing that I still don't fully understand with LINQ to SQL is how the the DataContext object (which is essentially your connection back to the database, tracking changes to objects) will work across process boundaries. For example, if I return a collection of LINQ objects from a web service, and the client modifies them and gives them back to me ... how does my DataContext know if they're new rows or modified rows? That was something that DataSets handled quite nicely. Some reading tells me that there's an "attach" method on the DataContext that lets me play with objects that weren't originally queried from that DataContext, so that looks like they've already thought of it. More research required before I fully grok it all.

Still no agenda for next month's meeting. If you have an idea for a presentation, please let us know! I'm thinking that we could probably go back to the two-presentation format to lessen the pressure on presenters.