WEB开发网
开发学院数据库MySQL 孜孜不倦的程序员:SQLite 内幕 阅读

孜孜不倦的程序员:SQLite 内幕

 2010-09-08 00:00:00 来源:WEB开发网   
核心提示: 通过添加一个指示 CLR 4.0 加载混合模式程序集的 app.config 文件,可以很容易地解决第一个问题: <?xmlversion="1.0"encoding="utf-8"?><configuration><star

通过添加一个指示 CLR 4.0 加载混合模式程序集的 app.config 文件,可以很容易地解决第一个问题:

<?xml version="1.0"encoding="utf-8" ?> 
<configuration> 
 <startup useLegacyV2RuntimeActivationPolicy="true"> 
  <supportedRuntime version="v4.0"/> 
 </startup> 
</configuration>

更大的问题是许多环境都不支持混合模式程序集,但无论如何,肯定会有一种适当的解决方法。 出于各种原因,全部托管解决方案是首选,但由于 SQLite DLL 是本机代码,因此这样做比较棘手。 最好是将 SQLite 代码库迁移到 C#,并尽可能地保持与原始 C 比较接近。

全部托管

再次重申一下,开源社区是有求必应的,在此示例中,它提供了一个名为“C#-SQLite”的项目,可从以下位置下载:code.google.com/p/csharp-sqlite。 很明显,该项目最初是一项通过迁移代码“学习 C# 语言的练习”,相关的 wiki 提供了有关作者如何管理该迁移的讨论,但现在我们已得到所需的确切结果,即:完全托管形式的 SQLite。

使用该项目时需要下载该项目的源代码,打开该项目,然后开始构建。 与许多开源项目一样,C#-SQLite 也由多个项目组成,但其中每个项目都包含在其自己的解决方案文件中,因此您可能需要打开多个解决方案。 (或者只是使用 MSBuild 从命令行开始构建,您可以使用其中最佳的那种方法。)

构建后,将 C#-SQLite 程序集 (Community.CSharpSQLite) 添加到项目;若要实现 ADO.NET 支持,还需要添加 C#-SQLite 客户端程序集 (Community.CsharpSqlite.SQLiteClient.dll)。 现在,SQLite 的所有功能可通过 ADO.NET 提供程序供我们使用,因此可以重新编写与前面显示的几乎完全相同的代码(请参阅图 6)。

上一页  4 5 6 7 8 9 10  下一页

Tags:孜孜不倦 程序员 SQLite

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接