ASP.NET MVC

I went to the ASP.NET MVC Firestarter event in NYC on Saturday. It was an all-day (9-5) event with several speakers talking about various aspects of the MVC framework, and some associated topics. Nearly everything that was covered was new to me. I’m somewhat familiar with the idea of the MVC design pattern, and I’ve played around with SubSonic a bit, but I hadn’t really read much of anything about ASP.NET MVC specifically. I feel like I’m pretty far behind the times, given that most of the stuff I do in work right now is still in ASP.NET 1.1.

I still need to learn LINQ too. I haven’t really had time to sit down and play with that yet either.

Microsoft stuff

I went to a Microsoft Heroes Happen Here event today in Edison. I had registered for the NYC event that happened about a month ago, but things came up at work, and I couldn’t make it. Stuff came up at work today too, so I had to skip the developer stuff in the afternoon. The morning track basically covered Windows 2008. It was pretty interesting, and I did learn some new stuff. They gave out a software bundle that included Vista Ultimate, VS.NET 2008, and a few other things. Honestly, the bundle o’ stuff is one of the main reasons I went to this event.

I’ve put off installing Vista on my main desktop machine at home, for a variety of reasons. Now that I have a free copy of Vista Ultimate with SP1, though, I decided to give it a shot. I’m not doing an upgrade install, though. I’m still afraid to try that. Instead, I’m wiping out my Ubuntu install, and putting Vista on my second drive. I’ll have XP on my 250 GB main drive, and Vista on my 100 GB secondary drive. I’m hoping that dual-boot between XP and Vista works out OK. I’m running the install right now; it’s been going for about 20 minutes. I think it’s almost done.

I also registered for the ASP.NET MVC Firestarter event in NYC that’s coming up this weekend. It’s always a little hard to talk myself into spending a whole day indoors on a sunny Saturday, in a Microsoft office, but I really need to keep up with some of this stuff. And I think it’ll be kind of fun.

dnrTV: .Net 2.0 stuff

I just watched dnrTV 18, on new language features in .Net 2.0. I was already familiar with partial classes, but they also went over some more esoteric stuff, including covariance and contravariance, nullable classes, and anonymous methods. Geez. There’s a lot of odd stuff in .Net that I just don’t know much about. Well, I guess that’s the point of watching screencasts and reading books and whatnot, huh?

yet more dnrTV

Not that anyone but me is going to be interested in this, but I watched dnrTV show #13 today, the second part of the CSLA.NET 2.0 overview. I’ve only scratched the surface on CSLA.NET so far, but I think I have a little more of an understanding of what’s going on and how it works.
I also caught up a bit on the .Net Rocks podcast on the trip down to my parents’ house and back today for Easter. I’m still about 40 episodes behind. I was (mostly) keeping up for a while, but I started falling behind when they went to twice-weekly. Then, my commute got shorter, which means less time for podcasts in the car. So, the end result is a huge backlog of DNR episodes.

dnrTV – Generics

I keep meaning to watch dnrTV, but I never seem to get around to it. I need to find about an hour where I can sit still in front of the computer, and give it my full attention, and that isn’t easy lately. I did just watch show #9, with Venkat Subramaniam talking about generics in C#. This is one of a handful of topics that I’ve got on my mental to-do list to learn more about. I see that show 105, the most recent show, is also about generics, so maybe I’ll try and watch that one tomorrow.

There are a number of shows on CSLA.NET, which is another topic I really need to learn about. I really need to talk myself into watching this stuff more often, and maybe watching a little less Frisky Dingo!

reference vs. value types, and LINQ

One of the people I work with was having some trouble with reference vs. value types (in C#) this week. This article seems to give a pretty clear explanation of how these things work. Always good to have a little refresher on the fundamentals.

And, in poking around on this guy’s web site, I found LINQPad, a tool for executing LINQ queries. I have to admit that I haven’t had any time to play around with LINQ at all, but I’m really curious about it. I like his idea of trying to do all your ad-hoc SQL queries in LINQ for a week, to force yourself to start getting used to it. Some of the stuff I’m doing this week is requiring me to do a *lot* of ad-hoc SQL, though. My brain is so completely wired for T-SQL at this point that I think I’d get really frustrated really quickly trying to use anything else.

Dynamically Created Controls in ASP.NET

I was working on a project last week that involved dynamically creating a bunch of controls on an ASP.NET page, then trying to, um, do stuff with them. (For lack of a better explanation…)

This article does a good job of explaining something that I’d kind of missed at first: dynamically-created controls don’t stay on a page after postback, normally. The “Page” class is stateless, destroyed after rendering the page. I didn’t wind up using this guy’s solution; I actually realized that I didn’t need to be dynamically creating the controls at all. I’d copied my page from another page that *did* need to create controls dynamically, but after I looked at my own page, I realized I just didn’t need to do things that way.

I’ve been doing more ASP.NET programming than usual lately, because I’m trying to finish up a project for a big client at work, and it’s kind of tricky and time-sensitive. Because of that, I’m just doing it (mostly) myself instead of farming it out to one of the other programmers. I’m having some fun with it. Aside from the dynamically created controls, I’m also playing around with generics a bit. This article by Jesse Liberty was helpful for setting up a simple collection using generics.