Linq to SQL with VS 2008 and MOSS

So here's my current plan for firing up these new technologies. As background, I gave a 15 minute presentation at a user group last night on the generalities of data abstraction and although I think I did ok, I also think that there are a lot more questions than answers in the developer community right now with regard to how to get data back into SQL Server through Linq.

I'm going to start out doing just Linq as I think its a little deeper than EF and more appropriate as a starting point. I also am concerned about how well EF will perform in the enterprise but that's for another day.

So I'm going to take the database I built for this presentation and put some data in it. Here's the current plan.

1. Explain where to find SQLMetal.exe and how to use it to generate an entity layer.

2. Take a look at normalized data in a real world scenario that includes things like null values and empty foreign keys (candidates for left join in SQL).

3. Figure out how to send an anonymous type to a business object so that I don't have to store the Linq query in my business object.

4. Get data from a business object back into the database for an update via Linq to SQL.

5. Get new data into the database from a business object via Linq to SQL.

6. Build and deploy a web part that allows the insert/update/viewing of all this data in VS 2008.

Wherever I find another blog or article that helps me move ahead I'll post that too. 

Not sure if I'll have time to do all this as I believe a new project is on my horizon but I'll do as much as I can. I'm also not sure how much of this has been done elsewhere or whether its even worthwhile. I think it will be a fun evolution though.

Along with part 1, I'll post a script to create and populate the database I'll be using.

JJ

1 Comment

  • Have you had any luck using linq to sql on a moss server. I have an asp.net dynamic data application that I want to put into sharepoint and havent had much luck, any advise.

Comments have been disabled for this content.