首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使mono的SqlMetal理解PostgreSQL中的用户/扩展定义类型

使mono的SqlMetal理解PostgreSQL中的用户/扩展定义类型
EN

Stack Overflow用户
提问于 2013-08-13 16:04:54
回答 1查看 248关注 0票数 0

我正在尝试将我的rails the应用程序移植到C#(mono),并且我想使用相同的数据库。当我尝试使用sqlmetal创建Linq模式时,我会得到以下错误消息:

代码语言:javascript
复制
sqlmetal: System.ArgumentException: Don't know how to convert the SQL type 'name' into a managed type.
Parameter name: dataType
  at DbLinq.Vendor.Implementation.SchemaLoader.MapDbType (System.String columnName, IDataType dataType) [0x00000] in <filename unknown>:0 
  at DbLinq.Vendor.Implementation.SchemaLoader.LoadColumns (DbLinq.Schema.Dbml.Database schema, DbLinq.Schema.SchemaName schemaName, IDbConnection conn, INameAliases nameAliases, DbLinq.Schema.NameFormat nameFormat, DbLinq.Vendor.Implementation.Names names) [0x00000] in <filename unknown>:0 
  at DbLinq.Vendor.Implementation.SchemaLoader.Load (System.String databaseName, INameAliases nameAliases, DbLinq.Schema.NameFormat nameFormat, Boolean loadStoredProcedures, System.String contextNamespace, System.String entityNamespace) [0x00000] in <filename unknown>:0 
  at DbMetal.Generator.Implementation.Processor.ReadSchema (DbMetal.Parameters parameters, ISchemaLoader& schemaLoader) [0x00000] in <filename unknown>:0 
  at DbMetal.Generator.Implementation.Processor.ProcessSchema (DbMetal.Parameters parameters) [0x00000] in <filename unknown>:0 

我的数据库使用两个扩展:hstorePostGIS。当我移除这两个扩展时,sqlmetal设法正确地创建模式。这两个扩展都会导致错误--当我只删除一个(两者都尝试过)时,我仍然会得到它。当然,删除这些扩展并不是一个选择.

据我所知,问题是sqlmetal不理解在这些扩展中定义的自定义类型。我搜索了web,发现我需要使用自定义模式加载程序来定义如何处理这些类型,sqlmetal的嵌入式文档说我应该使用--with-schema-loader来完成它,但我仍然找不到如何处理这些类型:

  • --with-schema-loader定义了用作自定义加载器的类,但在哪里可以指定包含该类的DLL文件?
  • 我该怎么写那个模式加载器呢?我找不到一个例子,但是嵌入式文档说它需要实现ISchemaLoader。我找不到它的文档,而且这是源代码什么也不告诉我(我预料到类似于MyBatis‘YypeHandlers.)

有人能告诉我怎么做到这一点吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-04 19:33:16

我的最终解决方案是完全不对SQL使用Linq,而是使用micro (PetaPoco)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18213969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档