Got the solution ... Finally ... :D
It seems like there are some dll files that do not get deleted or flushed out when you try to publish to a different server ... This causes a "Type Mismatch" leading to the above issue.
This is problem occurs because of the way in which ASP.NET 2.0 uses the application references and the folder structure of the application to compile the application. If the batch property of the <compilation> element in the web.config file for the application is set to true, ASP.NET 2.0 compiles each folder in the application into a separate assembly. In this scenario, a circular reference may occur. Additionally, the compilation process may fail if either of the following conditions is true:
The application contains references to Web controls.
The application contains references to Web pages that are outside the current directory.
To resolve this problem, use one of the following methods:
Back to the top Back to the top
Modify the web.config file
To modify the web.config file, set the batch property of the <compilation> element in the web.config file for the application to false. Compile the application and publish it. It will work.
Note This method is recommended only for small applications. In large production applications, when you set the batch property to false, ASP.NET 2.0 compiles each page in the application into a separate assembly. The individual page assemblies are then loaded at the next available memory location. Additionally, the individual page assemblies cannot be moved. This causes memory fragmentation.
As a solution, you can then set the "batch" property of the <compilation> element back to true or simply remove the "batch" property from the web.config file. This causes the server to flush out the old copy of the dll files and your application will work perfectly.
Method 2: Reorder the folders in the application
To avoid a circular reference, reorder the folders in the application. To reorder these folders, follow these steps:
1. Trace the references to the file and from the file that is indicated by the error message.
2. Identify the circular reference.
3. To avoid the circular reference, put the referenced files together in the same folder.