We are currently evaluating the Devart for Oracle provider and I have attempted to create a WCF RIA Services Class Library project using the Devart provider. Just to get started quickly, I created a model by adding an ADO.NET Entity Data Model item. Then I added a Domain Service Class with just one class in the model. The Server project compiles just fine but the client proxies do not generated on the client and I get a bunch of these errors:
TreModel.ssdl(10,6) : error 0040: The Type VARCHAR2 is not qualified with a namespace or alias. Only primitive types can be used without qualification
I referenced your forums and it appears people have had this in the past but those suggestions did not seem to help.
Here is what I modified in my dbContext class to try to accommodate the error:
Code: Select all
public partial class TreContext : DbContext
{
static TreContext()
{
var config = Devart.Data.Oracle.Entity.Configuration.OracleEntityProviderConfig.Instance;
config.CodeFirstOptions.ColumnTypeCasingConventionCompatibility = false;
}
public TreContext()
: base(new Devart.Data.Oracle.OracleConnection("Data Source=xxx;password=aaa;user id=bbb;"), true)
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public DbSet<TAX_AUTHORITY> TAX_AUTHORITY { get; set; }
}
Code: Select all
[EnableClientAccess()]
public class DomainService1 : DbDomainService<TreContext>
{
public IQueryable<TAX_AUTHORITY> GetTAX_AUTHORITY()
{
return this.DbContext.TAX_AUTHORITY;
}
}
Code: Select all
var config = Devart.Data.Oracle.Entity.Configuration.OracleEntityProviderConfig.Instance;
config.CodeFirstOptions.ColumnTypeCasingConventionCompatibility = false;
var treContext = new TreContext();
var x = treContext.MILL_LEVY_YEAR.Take(4).ToList();
Thank You
UPDATE: It seems RIA needs to know that the config.CodeFirstOptions.ColumnTypeCasingConventionCompatibility needs to be false during the build process (thats when it errors). Is there anyway to do this?