从DbLinq源代码创建Linq到sqlite的dbml

3
我尝试使用DbLinq创建linq-to-sqlite dbml,但失败了。 每次都会出现不同类型的错误。可能我做错了什么。
有人能告诉我从Dblinq源代码中创建dbml文件的逐步过程吗?

一个更有用的链接:http://code.google.com/p/dblinq2007/ - Foole
1
如果您告诉我们您遇到了哪些错误,那可能会有所帮助。 - Foole
Windows错误信息:“DbMetal已停止工作”。这就是我得到的。请检查我的编辑。 - Amsakanna
2个回答

2

您需要为 DbMetal.exe 提供一个 /provider:PROVIDER 选项,以便它知道您正在使用什么类型的数据库,否则它会默认您想要使用 Microsoft SQL Server。

此外,您只能同时使用 /dbml/code 选项中的一个。

请尝试使用以下命令:

DbMetal /provider:Sqlite /conn "Data Source=myDb.db3" /code:mycode.cs /namespace:myNS

如果这不起作用,请在以下网址提交错误报告: http://code.google.com/p/dblinq2007/issues/list

我在命令提示符中得到了这个....................... DbLinq数据库映射生成器 2008版0.17.0.0 适用于Microsoft (R) .NET Framework 3.5版本 根据MIT许可证(http://linq.to/db/license)分发
从DBML文件“Data Source=nwind2009.db3”读取模式 按任意键继续。...
我的run_sqliteMetal命令是:@echo offbin\DbMetal /provider:Sqlite /conn "Data Source=nwind2009.db3" /dbml:mycode.dbml /namespace:myNS暂停
- Amsakanna
请尝试使用0.19或主干版本。或者,这可能是处理您的.db3文件时出现的错误,请报告错误。 - jonp
我仍然没有得到帮助。最近我尝试了0.20版本。现在我遇到了这个错误:DbMetal:拒绝访问路径“G:\”。 - Amsakanna
你使用的完整命令是什么?它似乎很奇怪,它会尝试访问G:\。另请参阅:http://code.google.com/p/dblinq2007/wiki/Installation - jonp
@jonp:感谢您的帮助。我清除了旧版本并安装了最新版本的dblinq,现在它可以正常工作了。 - Amsakanna

2

解决方案:

我所采取的步骤:

  1. 此链接下载DBLinq 0.20源代码。
  2. 进行构建。
  3. 将我的数据库和System.Data.SQLite.dll文件复制到src\DbMetal\obj\Debug文件夹中。
  4. 使用以下代码分别从数据库创建dbml文件和从dbml文件创建cs文件:

DbMetal /provider:Sqlite /conn "Data Source=File.db3" /dbml:File.dbml

DbMetal /code:File.cs File.dbml

该过程在此链接中有详细说明 -> http://code.google.com/p/dblinq2007/wiki/Installation


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接