LINQ object not executing it's interface?

I switched laptops at work and had to recreate the test database for one of my projects. No problem. I dragged the DB table back over into my LINQ designer, but now when I run my code…

    testcmsDataContext db = new testcmsDataContext();
    IQueryable<cmschange> query = db.cmschanges; 

I’m getting a bizarre error.

CS0029: Cannot implicitly convert type ‘System.Data.Linq.Table<LINQDAL.CmsChanges.cmschange>’ to ‘System.Linq.IQueryable<cmschange>’

I’ve tried working around this, but without success, and not only was this code (and two others apps) working beautifully before, Table<TEntity> implements IQueryable<TEntity>. There shouldn’t be a problem here.

Several blogs and forums pointed out import problems but I’m using System.Linq, System.Data.Linq, and System.Linq.Dynamic.

Did the new regeneration kill your namespaces?

[this is why we source control the generated files too]

Exactly right. I set up SQL Server created the DB, and upgraded my namespaces to make it easier to transition new iterations from test to production. However, I had so many problems configuring SQL Server (it took a couple weeks, two installs, a and hard drive reformat), that I forgot I’d made that change. The original dbml was in App_Code, so it was still accessible. I rebuilt the production code to run from LINQDAL.CmsChanges, deleted the files in App_Code and then the test files were no longer confused.