When you develop a Entity Data Model (EDM) in Entity Framework (EF) for SQL server the version of the SQL environment is stored within the model so that EF at runtime knows what the correct syntax is when issuing commands to the underlying data provider. If for example you originally deployed your model against an SQL 2000 server database and then you looked at upgrading the SQL server to 2008 then chances are the the EDM that you have will fail to run correctly as the underlying data provider syntax will differ between the versions.
There is however a simple fix, if you open up the EDMX file for your model with an XML editor in visual studio you will see in the top section a line that looks like the below
<schema Namespace="Model.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2005" ....></schema>
The “ProviderManifestToken” is what EF uses to determine the SQL server version, in the above example by model is being used for SQL 2005 if I wanted this to run on SQL 2000 then I could just change the value from 2005 to 2000, then recompile my model and away to go EF does all the hard plumbing work for us
Since 99% of my development is against MS SQL Server I am not sure how EF manages other database provider versioning but I would assume that it has to be similar to the above.