Blogs

Gary's Blog

XPO – Uncoupled from ADO.Net Providers (coming in V2010 Vol 2)

     

We all know that loosely coupled is better than tightly coupled, but that’s not a principle we’ve been able to follow all the time here at Devexpress. For example, XPO is pretty tightly coupled to ADO.Net, which is not at all ideal. That is something that we are going to change – as far as we can – with the 10.2 release. What that means in reality is that XPO will have no direct reference to most of the ADO.Net providers, but instead it will reference only System.Data.SqlClient, System.Data.OleDb (for MS Access support) and VistaDB. We cannot remove the reference to the later as it provides its own specific interface for working with the schema. However, at the moment, the future of this database is not at all clear, so that problem me disappear over time.

So how do we work with the other providers but maintain a loose coupling? Well, simply, we load these other providers dynamically. This means that you will not be tied to a specific version of the provider, you can easily use the latest version without having to recompile the DevExpress.Xpo.Providers assembly, configuring assembly binding redirections or waiting for updates from us! At last, no more “Could not load file or assembly 'MySql.Data, Version=XXX…or one of its dependencies. ” errors! Having said that, you should still only use the providers that are currently supported by XPO, as only these are tested and guaranteed to work.

Of course, these changes wont affect performance in any way as we still use the standard ADO.Net interfaces or delegates prepared with the provider. Since all the changes are made internally, you wont have to change any of your code to take advantage of this extra freedom!

That’s all from this short (but sweet) post, until next time, happy XPO’ing Smile

Published Oct 13 2010, 03:57 PM by Gary Short (DevExpress)
Filed under: ,
Technorati tags: v2010.2, XPO
Bookmark and Share

Comments

 

Michael Thuma said:

This is good news...

October 13, 2010 11:14 AM
 

Chris Walsh [DX-Squad] said:

All I can say is that this is AWESOME!!!  You've made me a happy man.

October 13, 2010 4:55 PM
 

Michael Proctor [DX-Squad] said:

great work guys, this is definately a good addition that should make everyones (including DX's) life much easier.

Cheers

October 13, 2010 6:09 PM
 

Dennis (DevExpress Support) said:

@Michael:

>>

this is definately a good addition that should make everyones (including DX's) life much easier.

<<

Yes, you are right. If you analyze the Support Center, you will find a lot of issues on problems with different versions of providers assemblies.  I remember that I even planned a KB Article/help topic about that. So, we are also glad to know that this problem is now finally sorted out:-)

October 13, 2010 8:07 PM
More from DevExpress
Live Chat
Have a pre-sales question?
Need assistance with your evaluation?
We are here to help.
Chat is one of the many ways you can contact members of the DevExpress Team. We are available Monday-Friday between 8:30am and 5:00pm Pacific Time.
If you need additional product information, require pre-sales assistance, or want help with your order, write to us at info@devexpress.com or call us at
+1 (818) 844-3383.