Linq to MySql環境的配置


NET3.5框架提供的Linq可以對多種數據源和對象進行查詢,如數據庫、數據集、XML文檔甚至是數組。而

對數據庫操作,Linq只是默認對SqlServer支持(Linq to Sql),對於其他數據庫不會默認支持,需要自己

進行復雜的配置。由於最近項目需求要用到Linq to MySql,要求Linq操作MySql數據庫!所以配置了很久

才配置成功Linq to MySql環境!具體如下:

一、工具:

DbLinq-0.20.1 下載地址:http://code.google.com/p/dblinq2007/

MySql 5.1.x,編程主機需要安裝MySql

VS2008

二、生成C#語言的.cs文件

首先將下載好的DbLinq-0.20.1解壓到D盤(個人習慣),在開始編譯.cs文件之前要確保DbLinq-0.20.1文件

目錄下有MySql.Data.dll文件,如果你下載的是DbLinq-0.20.1這個版本,那么這里就沒有

MySql.Data.dll這個MySql數據支持文件,你可以到

http://code.google.com/p/dblinq2007/downloads/list里下載DbLinq-0.20.1-src.zip ,解壓這個文件

!這是DbLinq官方提供的鏈接各種數據庫的案例!在lib文件夾下我們可以找到MySql.Data.dll文件,將

這個文件拷貝到DbLinq-0.20.1的目錄下,然后我們可以開始用DbLinq-0.20.1里的DbMetal.exe文件編譯

操作MySql數據庫的.cs文件了

打開DOS命令窗口,進入到DbLinq-0.20.1解壓目錄。然后輸入

DbMetal.exe -provider=MySql -database:ownhome -server:localhost -user:root -password:123456

-namespace:MySqlDAL -code:mysqllinq.cs -sprocs
回車!

如果不出問題的話,將會在DbLinq-0.20.1解壓目錄下生成mysqllinq.cs文件,用來操作MySql數據庫的文

件!

大概解釋一下:命令中的provider,表示需要編譯的驅動,例如SqlServer,FireBird等,databas表示在

MySql數據庫中需要操作的數據庫名稱,我測試用的數據庫名稱叫ownhome,server表示編譯主機,為本機

localhost,user表示訪問MySql數據庫的用戶名,我用的是root,password表示訪問MySql數據庫所用的

密碼,我的是123456。namespace表示生成.cs文件的命名空間,這個按照自己項目需求來定!code表示要

生成的.cs的文件名稱。

三、在VS2008里新建項目

在VS2008里添加網站項目,並且在網站項目中添加一個文件夾叫MySqlSource(個人習慣),將DbLinq-

0.20.1目錄下的DbLinq.dll、DbLinq.MySql.dll、MySql.Data.dll這三個庫文件拷貝到MySqlSource目錄

下。在同一個解決方案下添加一個類庫項目叫MySqlDAL,將剛才生成好的mysqllinq.cs文件拷貝到

MySqlDAL類庫項目中,在網站中添加對MySqlDAL類庫項目的引用!添加對MySql.Data.dll的引用,在

MySqlDAL類庫項目中也添加對DbLinq.dll、DbLinq.MySql.dll、MySql.Data.dll這三個文件的引用,以及

對系統System.Data.Linq的應用!

四、測試

在剛才所建的網站中添加一個Web頁面,從工具箱中拖一個GridView控件到該頁面中,添加頁面命名空間

的引用,

using MySql.Data;
using MySql.Data.MySqlClient;
using MySqlDAL;

在頁面加載事件里寫
if(!IsPostBack)
{
 string connStr =

@"server=localhost;database=ownhome;user=root;pwd=123456;port=3306";
 MySqlConnection conn = new MySqlConnection(connStr);
        OwnHome o = new OwnHome(conn);
        var data = from f in o.Users select f;
        GridView1.DataSource = data;
        GridView1.DataBind();
}
然后保存,運行頁面,如果不出問題,那么GridView將會顯示MySql數據庫中ownhome數據庫的Users表的

數據內容

這個測試時基於Linq to MySql的查詢實現的,向數據庫里添加,修改,刪除數據操作與Linq to Sql的操作基本上一致,所以在這里不再舉

例!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM