[Mono-dev] EF fails with NotImplementedException

Eddy Zavaleta eddy at mictlanix.org
Tue Oct 23 08:59:12 UTC 2012


Bug 7936 <https://bugzilla.xamarin.com/show_bug.cgi?id=7936> submitted.

Is there any workaround or any other way to get EF working with MySQL/MSSQL
on mono?

On Tue, Oct 23, 2012 at 3:26 AM, Marek Safar <marek.safar at gmail.com> wrote:

> Hi,
>
> I was trying to run a simple EF app using Mono 3.0 on Mac OS X but I got
>> this error:
>>
>>
> Please fill a bug report. Our System.Data implementation which EF relies
> on is not complete and there will be issues like yours where underlying
> code is not implemented or buggy.
>
> Thanks
> Marek
>
>
>>  Unhandled Exception:
>> System.NotImplementedException: The requested feature is not implemented.
>>   at System.Data.Common.DbProviderFactories.GetFactory
>> (System.Data.Common.DbConnection connection) [0x00000] in <filename
>> unknown>:0
>>   at System.Data.Entity.Core.Common.DbProviderServices.GetProviderFactory
>> (System.Data.Common.DbConnection connection) [0x00000] in <filename
>> unknown>:0
>>   at
>> System.Data.Entity.Utilities.DbConnectionExtensions.GetProviderInvariantName
>> (System.Data.Common.DbConnection connection) [0x00000] in <filename
>> unknown>:0
>>   at System.Data.Entity.Internal.InternalConnection.get_ProviderName ()
>> [0x00000] in <filename unknown>:0
>>   at System.Data.Entity.Internal.LazyInternalContext.get_ProviderName ()
>> [0x00000] in <filename unknown>:0
>>   at System.Data.Entity.Internal.DefaultModelCacheKeyFactory.Create
>> (System.Data.Entity.DbContext context) [0x00000] in <filename unknown>:0
>>   at System.Data.Entity.Internal.LazyInternalContext.InitializeContext ()
>> [0x00000] in <filename unknown>:0
>>   at System.Data.Entity.Internal.InternalContext.Initialize () [0x00000]
>> in <filename unknown>:0
>>   at
>> System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType
>> (System.Type entityType) [0x00000] in <filename unknown>:0
>>   at
>> System.Data.Entity.Internal.Linq.InternalSet`1[EFTest.User].Initialize ()
>> [0x00000] in <filename unknown>:0
>>   at
>> System.Data.Entity.Internal.Linq.InternalSet`1[EFTest.User].GetEnumerator
>> () [0x00000] in <filename unknown>:0
>>   at
>> System.Data.Entity.Infrastructure.DbQuery`1[EFTest.User].System.Collections.Generic.IEnumerable<TResult>.GetEnumerator
>> () [0x00000] in <filename unknown>:0
>>   at EFTest.MainClass.Main (System.String[] args) [0x00018] in
>> /Users/eddy/Projects/EFTest/EFTest/Main.cs:46
>>
>>
>> The same code works fine with MS .NET.
>>
>>
>> // Main.cs
>> using System;
>> using System.ComponentModel.DataAnnotations;
>> using System.ComponentModel.DataAnnotations.Schema;
>> using System.Data.Common;
>> using System.Data.Entity;
>> using System.Data.SqlClient;
>> using System.Linq;
>>
>> namespace EFTest
>> {
>> [Table("user")]
>>  class User
>> {
>> [Key]
>>  [Column("user_id")]
>> public string UserName { get; set; }
>>
>>  public string Password { get; set; }
>>
>> public string Email { get; set; }
>>  public override string ToString ()
>> {
>>  return string.Format ("{0}, {1}, {2}", UserName, Password, Email);
>> }
>>  }
>>
>> class SampleEntities : DbContext
>> {
>>  public SampleEntities (DbConnection conn) : base(conn, true)
>> {
>> }
>>  public DbSet<User> Users { get; set; }
>> }
>>
>> class MainClass
>> {
>> public static void Main (string[] args)
>>  {
>> var em = new SampleEntities (new SqlConnection ("server=localhost;" +
>>  "database=ef_demo;" +
>> "uid=developer;" +
>> "pwd=123456;"));
>>
>> foreach (var item in em.Users) {
>> Console.WriteLine (item);
>>  }
>> }
>> }
>> }
>>
>> // ef_test.sql
>> CREATE DATABASE ef_test;
>> GO
>>
>> USE ef_test;
>> GO
>>
>> CREATE TABLE [user] (
>>   user_id varchar(20) NOT NULL,
>>   password varchar(40) NOT NULL,
>>   email varchar(250) NOT NULL,
>>   PRIMARY KEY (user_id)
>> );
>> GO
>>
>> INSERT INTO [user] VALUES ('admin', '123456', 'admin at company.com'),
>>   ('user', '123456', 'user at company.com'),
>>   ('guest', '123456', 'guest at company.com');
>> GO
>>
>>
>> Thanks,
>> --
>> Eddy Zavaleta
>>
>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
>


-- 
Eddy Zavaleta
mictlanix.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ximian.com/pipermail/mono-devel-list/attachments/20121023/5dcbc421/attachment.html>


More information about the Mono-devel-list mailing list