Querying IMDB for movie information

I’m a big movie fan and own a lot of movies. To keep track of them all I manage a small access database file. This is ok but some more details on the movie would be great. So if I want to find some more information on a specific movie, I visis www.imdb.com , which probably is one the best knows movie sites out there.

The problem with IMDB however is that there is no API or webservice that you can talk too. Like Amazon.com for example does have, http://aws.amazon.com/. So I opened google and started looking for some way of querying IMDB. If you google you get a lot of results of people who have created something.

There was one interesting open source project which caught my eye and this is, Imdb services on codeplex.

I though wow this looks good, let’s take a look at the code.

In the vb.net project you’ll see a class that screen scrapes the IMDB result and using regular expressions selects the different parts of data and places it in different classes. A really clever way of getting data from somewhere. The problem I see here though is that sites like IMDB tend to do updates to there HTML code. When something like that would happen, this project will throw errors. But for now, really nice project and if you want to create a slick winforms application to browse through your movies, you can use this project to get some more details.

For the long run, please IMDB, put some effort in creating a webservice that we can use to query and retrieve movie information. You would make a lot of people very happy I think.



Why is this install asking for .NET 3.5 …

I’m not using any code that’s specific to .NET 3.5 framework. I am however developing my application using Visual Studio 2008. Yes I have specified the target framework as .NET2.0. Still my installer that my setup project created is asking for .NET3.5.

Normally this is no big deal, just download the core .NET3.5 framework files, about 70MB and your done. But let’s say that you don’t have the system requirements for .NET3.5, for example Windows2000. You can’t install .NET 3.5 on Windows2000.

So I did some investigation on the setup project. Because I was absolutely sure I did not write any code that required .NET3.5 it had to be there somewhere.

In your Setup Project you need to look for Deteched Dependencies. There is a node called Microsoft .NET Framework, double click this and look at the property window:


As you can see, you can specify the required .NET framework there. Change this to the framework you desire and you’re ready to go!

Updated training kit released for .NET 3.5 SP1

Yesterday I welcomed two new service packs, today the associated trainingkit. The .NET Framework 3.5 Enhancements Training Kit includes presentations, hands-on labs, demos, and event materials. This content is designed to help you learn how to utilize the .NET 3.5 Enhancement features including: ASP.NET MVC, ASP.NET Dynamic Data, ASP.NET AJAX History, ASP.NET Routing, ADO.NET Data Services, ADO.NET Entity Framework, WCF 3.5 SP1, and the .NET Framework Client Profile.

Download .NET framework 3.5 Enhancements Training kit

Talking about Visual Studio 2008 SP1 and .NET 3.5 SP1

image Today 2 new SP1′s arrived on the scene. One for Visual Studio 2008 and one for Microsoft’s development .NET3.5 framework. It’s a good thing too, the framework has some cool enhancements for the traditional languages like C#, VB but also for WPF, ASP.NET 3.5 etc..

from Microsoft.com/downloads

.NET Framework version 3.5 Service Pack 1 provides the following new features and improvements:

- ASP.NET Dynamic Data, which provides a rich scaffolding framework that enables rapid data driven development without writing code, and a new addition to ASP.NET AJAX that provides support for managing browser history (back button support). For more information, see What’s New in ASP.NET and Web Development.

- Core improvements to the CLR (common language runtime) that include better layout of .NET Framework native images, opting out of strong-name verification for fully trusted assemblies, improved application startup performance, better generated code that improves end-to-end application execution time, and opting managed code to run in ASLR (Address Space Layout Randomization) mode if supported by the operating system. Additionally, managed applications that are opened from network shares have the same behavior as native applications by running with full trust.

- Performance improvements to WPF (Windows Presentation Foundation), including a faster startup time and improved performance for Bitmap effects. Additional functionality for WPF includes better support for line of business applications, native splash screen support, DirectX pixel shader support, and the new WebBrowser control.

- ClickOnce application publishers can decide to opt out of signing and hashing as appropriate for their scenarios, developers can programmatically install ClickOnce applications that display a customized branding, and ClickOnce error dialog boxes support links to application-specific support sites on the Web.

- The Entity Framework is an evolution of the existing suite of ADO.NET data access technologies. The Entity Framework enables developers to program against relational databases in according to application-specific domain models instead of the underlying database models. For more information, see Getting Started with the Entity Framework. The Entity Framework introduces some additional features, including support for new SQL Server 2008 types, default graph serialization of Entities, and the Entity Data Source. This release of the Entity Framework supports the new date and file stream capabilities in SQL Server 2008. The graph serialization work helps developers who want to build Windows Communication Foundation (WCF) services that model full graphs as data contracts. The Entity Data Source provides a traditional data source experience for ASP.NET Web application builders who want to work with the Entity Framework.

- LINQ to SQL includes new support for the new date and file stream capabilities in SQL Server 2008.

- The ADO.NET Data Services Framework consists of a combination of patterns and libraries, which enable data to be exposed as a flexible REST (Representational State Transfer)-based data service that can be consumed by Web clients in a corporate network or across the Internet. The ADO.NET Data Services Framework makes data service creation over any data source. A conceptual view model of the underlying storage schema can easily be exposed through rich integration with the ADO.NET Entity Framework. Services created by using the ADO.NET Data Services Framework, and also compatible Windows Live (dev.live.com) services, can be easily accessed from any platform. For client applications that are running on Microsoft platforms, a set of client libraries are provided to make interaction with data services simple. For example, .NET Framework-based clients can use LINQ to query data services and a simple .NET Framework object layer to update data in the service.

- Windows Communication Foundation now makes the DataContract Serializer easier to use by providing improved interoperability support, enhancing the debugging experience in partial trust scenarios, and extending syndication protocol support for wider usage in Web 2.0 applications.

- The .NET Framework Data Provider for SQL Server (SqlClient) adds new support for file stream and sparse column capabilities in SQL Server 2008.

If you want more information on which exact bugs were fixed, check out KB951847: List of changes and fixed issues for Visual Studio 2008 Service Pack 1 Beta for the .NET Framework 3.5

from asp.net/downloads

ASP.NET in the .NET Framework 3.5 Service Pack 1 release includes numerous bug fixes. In addition, it includes features for the following:

- Enabling high-productivity data scenarios by using ASP.NET Dynamic Data.

- Supporting the browser navigation in ASP.NET AJAX applications by using ASP.NET AJAX browser history.

- Increasing the download speed for ASP.NET applications by using ASP.NET AJAX script combining.

Check out the following link if you want to look at screencasts about the new ASP.NET 3.5 enhancements (Dynamic data, ASP.NET AJAX browser history, ASP.NET AJAX script combining, ADO.NET Data Services, ADO.NET Entity Framework)

I’m also very happy with the SP1 for Visual Studio 2008. I wanted to try out SQL Server 2008, which came out a couple days ago. But there seems to be a problem when you try to install  SQL Server 2008 with Visual Studio 2008 (without SP1). They have conflicting components. If you check out the release notes of SQL Server 2008 you can see that Visual Studio 2008 SP1 is a requirement for SQL Server 2008.

One other tip I have to give you is that if you want to install Visual Studio 2008 SP1 and you have beta version of the service pack, please download an use the Visual Studio 2008 Service Pack Preparation Tool. This tool deletes all those previous versions.

Ok so now you have all the necessary information so go ahead and:

Download Visual Studio 2008 SP1 (which also installs .NET 3.5 SP1)

Download .NET 3.5 SP1

Other informative links:

Official Visual Studio 2008 SP1 homepage