I agree. In my case I moved an step back and went back to the ado.net. I then work over a populated list using linq. With some abstraction own classes you can develop smoothly.
LinQ to SQL is a complex project and LinQ to Entities is a heavy weight dream. NHibernate has no sense to me because al the preparatives that it needs. -----Original Message----- From: Abe Gillespie Sent: 8 May 2012 18:06:15 GMT To: Mathias Tausig Cc: Mono-list@lists.ximian.com Subject: Re: [Mono-list] Using a mysql Set column with sqlmetal All I can say is "GOOD LUCK!" DbLinq has long atrophied and after spending many many hours trying to wrangle it myself, I ended just buying Devart. Trust me, it pays for itself over the hours (and hours and hours) of frustration it'll save. I would recommend Devart or an alternative method for accessing your data and to steer far clear of DbLinq. Don't get me wrong, though. It was a very ambitious project and the code is quite beautiful. But there are way too many edge cases that aren't covered and you'll undoubtedly eventually run into one or more of those issues. -Abe On Tue, May 8, 2012 at 11:24 AM, Mathias Tausig <mathias.tau...@a-cert.at> wrote: > Hy! > > I am trying to use a mysql database with mono and Linq2Sql. > After a long hassle I have actually managed to create a helper class > with sqlmetal and use for certain databased. > > My problem starts, as soon as I try to use a table which has a column > with a SET type in mysql. > The dbml created by sqlmetal than has a line like this: > > <Column Name="123_UNS" Member="_123UNS" Storage="_123uns" > Type="enum J, N" DbType="set('J','N')" IsPrimaryKey="false" > IsDbGenerated="false" CanBeNull="true" /> > > And when I try to generate a C# class from it I get: > >>>> Reading schema from DBML file '/tmp/a3.dbml' > <<< writing C# classes in file '/tmp/db.cs' > sqlmetal: System.NullReferenceException: Object reference not set to an > instance of an object > at DbMetal.Generator.CodeDomGenerator.GenerateTableClass > (DbLinq.Schema.Dbml.Table table, DbLinq.Schema.Dbml.Database database) > [0x00000] in <filename unknown>:0 > at DbMetal.Generator.CodeDomGenerator.GenerateCodeDomModel > (DbLinq.Schema.Dbml.Database database) [0x00000] in <filename unknown>:0 > at DbMetal.Generator.CodeDomGenerator.Write (System.IO.TextWriter > textWriter, DbLinq.Schema.Dbml.Database dbSchema, > DbMetal.Generator.GenerationContext context) [0x00000] in <filename > unknown>:0 > at DbMetal.Generator.Implementation.Processor.GenerateCode > (DbMetal.Parameters parameters, DbLinq.Schema.Dbml.Database dbSchema, > ISchemaLoader schemaLoader, System.String filename) [0x00000] in > <filename unknown>:0 > at DbMetal.Generator.Implementation.Processor.WriteSchema > (DbLinq.Schema.Dbml.Database dbSchema, ISchemaLoader schemaLoader, > DbMetal.Parameters parameters) [0x00000] in <filename unknown>:0 > at DbMetal.Generator.Implementation.Processor.ProcessSchema > (DbMetal.Parameters parameters) [0x00000] in <filename unknown>:0 > > I have dug into the source code a bit, and I think, that at one point, > Type.GetType("enum J, N") is executed and returns null. > > Is there some known possibility to make this work? > > regards > Mathias > > > _______________________________________________ > Mono-list maillist - Mono-list@lists.ximian.com > http://lists.ximian.com/mailman/listinfo/mono-list > _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list _______________________________________________ Mono-list maillist - Mono-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-list