新聞中心
這里有您想知道的互聯網營銷解決方案
LinqToSQL數據概括
學習Linq時,經常會遇到Linq To SQL數據問題,這里將介紹Linq To SQL數據問題的解決方法。

很久之前,在我剛學數據庫編程的時候,就希望直接建一個數據庫通用的操作類, 即寫 Insert(類實例), 那么剩下的工作就交給底層代碼來實現如何Insert。 現在接觸了Linq, 感覺離這個夢想的實現已經不遠了。
下面就分享一下我的源代碼,很簡單,估計剛學Linq的人也能看懂。
1. 建一個project 命名為DLinq ,添加一個Linq To SQL數據源,這里以經典的Northwind數據庫為例,命名為NWDB.dbml 。
2. 建另一個Project 為DAL層 ,添加一個Table工廠, 這樣我們就可以通過實體來獲得Table
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace DAL
- {
- public staticclass TableFactory
- {
- public static System.Data.Linq.Table
CreateTable () where T : class - {
- return Database.NWDB.GetTable
(); - }
- }
- }
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace DAL
- {
- publicstatic class Database
- {
- private static DLinq.NWDBDataContext _NWDB = null;
- public static DLinq.NWDBDataContext NWDB
- {
- get
- {
- if (_NWDB == null)
- _NWDB = new DLinq.NWDBDataContext();
- return _NWDB;
- }
- }
- }
- }
3. 借助Linq的特性,現在就可以寫通用的數據庫操作類了
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace DAL
- {
- public class Utility
- {
- public static void Insert
(T TEntity) where T : class - {
- var table = TableFactory.CreateTable
(); - table.InsertOnSubmit(TEntity);
- }
- public static IEnumerable
Where (Func , bool> predicate) where T : class - {
- var table = TableFactory.CreateTable
(); - return table.Where(predicate).AsEnumerable();
- }
- public static void SubmitChanges()
- {
- Database.NWDB.SubmitChanges();
- }
- }
- }
【編輯推薦】
- LINQ to SQL查詢分析
- LINQ查詢架構簡單介紹
- LINQ to SQL映射關系概述
- LINQ To SQL對象模型淺析
- LINQ to SQL映射列描述
新聞名稱:LinqToSQL數據概括
文章鏈接:http://m.5511xx.com/article/cdeepsi.html


咨詢
建站咨詢
