Yes, it is possible, but it's a lot of work, as you have to create content handlers that link to the new SN 7.0 libraries. For the existing custom content handlers this is a simple copy/paste with a few edits here and there. Just add the handler's C# code to the new MVC project and make sure it compiles and has no errors.
That's the easy part! Now you have to create handlers for all data in your repository that references the 6.5 libraries. For my project, I had to port 11 content handlers (from the SN install), plus another 30+ supporting classes.
It's a good idea to delete all the unused content from your repository before you start the port, as the MVC application throws an exception when it tries to pull content from the repository and cannot find a SN 7.0 handler for it. Things like Blog
, Wiki
, Journal
, etc., can be deleted if they are not used.
EDIT: To address the comment from Miklos, it should be stated that this question arose from an experimental project to evaluate the upgrade path to SN 7.0, and is not a recommended upgrade approach. Ah, the beauty of open source software!
I intend to experiment with upgrading the custom content by exporting the data as XML from the 6.5 repository, and then importing that into the 7.0 repository. So long as none of the content derives from any exotic Content Types (CTDs) found in 6.5 but not in 7.0, this should be feasible and straightforward.
Finally, I have to disagree with the comment that the best thing to do is use the REST API in the 6.5 framework for an MVC app. I've done this several times and SN 6.5 just doesn't easily support MVC. All calls are client-side OData Ajax, debugging is a pain, there's no server side C# API, and writing Ajax calls every time you need to query the repository is ridiculous. And yes, I know you can create OData calls from the server, but it's a far cry from a clean and simple server side API with nice intellisense. It's simply not worth the struggle. With SN 7.0, you can have an MVC site running in about 10 minutes using the NuGet packages, with server side AND client side support. There's just no comparison.