在C#中利用Nuget包使用SQLite数据库和Linq to SQLite_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 在C#中利用Nuget包使用SQLite数据库和Linq to SQLite

在C#中利用Nuget包使用SQLite数据库和Linq to SQLite

 2013/7/31 12:08:48  天使爱比目鱼  博客园  我要评论(0)
  • 摘要:本来是学习在VB中使用SQLite数据库和LinqtoSQLite,结果先学习到了在C#中使用SQLite数据库和LinqtoSQLite的方法,写出来与大家共同学习。(不知道算不算不务正业)1、建立或打开一个C#项目,如果是新建的项目则需要先保存一下,不然无法安装Nuget包。2、安装Nuget的LinqtoSQLite包,打开Nuget包管理器控制台:3、在PM>提示符后输入安装命令:(电脑要联网)Install-Packagelinq2db.SQLite4、安装成功后
  • 标签:C# 使用 数据库 利用 数据 SQL

本来是学习在VB中使用SQLite数据库和Linq to SQLite,结果先学习到了在C#中使用SQLite数据库和Linq to SQLite的方法,写出来与大家共同学习。(不知道算不算不务正业)

1、建立或打开一个C#项目,如果是新建的项目则需要先保存一下,不然无法安装Nuget包。

2、安装Nuget的Linq to SQLite包,打开Nuget包管理器控制台:

 3、在PM>提示符后输入安装命令:(电脑要联网)

Install-Package linq2db.SQLite

4、安装成功后:

自动添加了依赖项:System.Data.SQLite、linq2db、ling2db.t4models(创建Linq to SQLite的T4模板)

在解决方案资源管理器中添加了几项:

 5、现在就可以使用SQLite数据库了:

using System.Data.SQLite;

 由于对C#代码不是太熟悉,就不写具体的连接方法了。

6、实现Linq to SQLite:

打开解决方案资源管理器中LinqTODB.Template文件夹中的CopyMe.SQLite.tt.txt文件:

DBAE0ED4.jpg" alt="" />

显示如下:

7、模板说明的第一步、第二部都不用管,我们直接来做第三部,在Web/app.config文件中添加数据库连接:

打开解决方案的属性窗口,选择”设置“,添加一个”connectionStrings“的连接字符串,并设置值后保存:

打开Web/app.config文件,修改文件,在connectionString="Data Source=E:\Address.db3" 后添加providerName="SQLite":

整个配置文件如下:(其中E:\Address.db3应为你的SQLite数据库文件)

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="WindowsFormsApplication1.Properties.Settings.connectionStrings"
            connectionString="Data Source=E:\Address.db3" providerName="SQLite" />
    </connectionStrings>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>

8、回到CopyMe.SQLite.tt.txt文件窗口,修改两个位置后保存:

第一个位置是数据库文件所在的目录,本例应修改为“E:\”,第二个位置是SQLite数据库的文件名,本例应为“Address.db3"。(也可以修改NamespaceName来修改为自己的命名空间)

 9、在解决方案资源管理器窗口,右击CopyMe.SQLite.tt.txt文件重命名:"Address.tt",文件名随便起,后面的.txt去掉,得到模板文件:

出现询问是否执行模板文件窗口:

确定后在解决方案资源管理器窗口多出了Linq to SQLite类:

10、现在可以在你的代码中运行Linq To SQLite了:

private void Form1_Load(object sender, EventArgs e)
        {
            var db=new DataModel.addressDB;
            var temp=
                from c in db.AddressDistricts 
                select c;
            foreach (var c in temp)
                    Console.WriteLine(c.DistrictName );

        }

 

 

 

 

 

悲剧啊,vb中什么时候能实现啊。

题后话:Nuget的Linq TO SQLite包十分的强大,不仅实现了Linq对SQLite数据库的支持,同时还实现了Linq 对Access、DB2、Firebird、Oracle等11种数据库的支持。

 

 

 

 

 

 

 

 

 

发表评论
用户名: 匿名