So… I downloaded and installed Oracle’s Beta version of their EF provider… Why? Because nothing else seemed to work very well (i tried the one on CodePlex as well as the one on MSDN), and my company is not going to pay for a commercially available one (like the one from devart).
So, it worked great. I was able to see the oracle database, select the particular schema I was interested in, pull in the table definitions. Great!
Now I get an error. It seems the default behavior of the provider is to map number(1,0) fields to boolean types in .NET. Not good, but, I should be able to change this, right? The error I got was something along the lines of “the types don’t match”. So I change the definition of that field to a Decimal(1,0).
Now, the new error I am getting is that decimal(1,0) is not compatible with number(1,0). And I am stuck. I cannot make a change to the mapping to anything that works.
I don’t like using Oracle to begin with because they seem to be a couple of years behind supporting anything .NET related. Now, I am ready to give up on them altogether.
So, my question is this… I this any way besides the devart components that I can get Oracle working with EF? It would make my life simpler if I can. If not, then I get to hand-code all of this goodness… or tell the partner to switch over to SQL server since it’s just as good (for what they are doing with it…)
This sounds like beta 1. By default beta 1 mapped number(1,0) to boolean and all other number types to decimal.
Beta 2 is out now and should fix both of these issues. Beta 2 lets you choose what to map Number(1,0) to and also supports mapping to more sane things like int and long when you’re using a number(X,0). Full info is in the readme, but the short version is that the fastest way to get what you want is to install beta 2, then delete and recreate your model. (You can update it, but it’s a bit of a hassle from beta 1 due to so much stuff changing and it sounds like you didn’t get very far.)
In my experience with beta 2, it should get the types right a lot more often then beta 1 did. So you shouldn’t have change nearly as much.