程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> ASP.NET 3.5企業級項目開發 第二章(續) 數據訪問層(DAL)的開發解決方案提出

ASP.NET 3.5企業級項目開發 第二章(續) 數據訪問層(DAL)的開發解決方案提出

編輯:關於ASP.NET

前言:首先給大家說聲"對不起",因為自從打算寫這系列的文章以來,得到大家很多的支持,謝謝大 家!最近因為公司的事和朋友找工作的事,沒有怎麼接著寫了,也調了大家的胃口,還希望園子裡的朋友 原諒!

本篇主要是講述數據層的開發,之前的一篇文章已經給出了很多的選中的方案,如 SqlHelper,DataTable/DataSet,以及自定義實體。但是我們說過了,那些方案都有不盡人意的地方,所以 我們就提出用Linq,找個方案就比之前好一些,但是也不是那麼完美了。

本篇的話題如下:

Linq中自定義方法

提出解決方案

Linq中自定義方法

在此之前,我們先要講清楚一個問題:在Linq中的自定義存儲過程。

我們知道,當我們把數據庫中的一張表拖放到Linq的ORM設計器上以後,ORM就自動生成了很多的方法 ,如Delete,Update,Insert方法,這些方法都是自動生成的,一般是沒有什麼問題的,但是一個項目的開 發中,很多時候我們都要把這些方法進行定制。那麼我們就要用自己的存儲過程。

一般情況下,我們可以在我們的數據庫中定義一些的存儲過程,如下,我們在之前定義的 ENTUserAccount表中添加一條數據:

CREATE PROCEDURE ENTUserAccountInsert
  (
  @WindowsAccountName varchar(50),
  @FirstName varchar(50),
  @LastName varchar(50),
  @Email varchar(100),
  @IsActive bit,
  @InsertENTUserAccountId int
  )
  AS
  SET NOCOUNT ON
  INSERT INTO ENTUserAccount(WindowsAccountName, FirstName, LastName,
  Email, IsActive, InsertENTUserAccountId, InsertDate,
   UpdateENTUserAccountId, UpdateDate)
  VALUES (@WindowsAccountName, @FirstName, @LastName, @Email,
  @IsActive, @InsertENTUserAccountId, GetDate(),
  @InsertENTUserAccountId, GetDate())
  RETURN

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved