日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

一个简单的三层架构例子(.NET入门)

發布時間:2024/9/20 asp.net 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一个简单的三层架构例子(.NET入门) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

最近開始學習.NET 用的是c# 目前要用三層架構的模式開發一個簡單的圖書管理系統,不過以為剛接觸這門技術。做起來分外吃力,甚至連究竟要寫些什么都不清楚。

?????? 于是乎上網到處找尋三層架構的基礎入門知識,終于找到了一篇:

????? 原文來自:http://hi.baidu.com/tgszsh/blog/item/9f30bc1f6cc1def0e1fe0ba8.html

?????? 不過經過自己的試用,發現里面還是會出現一些毛病。而且對于像我這種新手來說,本來是想看個簡單的例子,結果還要自己上網到處搜索解決方案,郁悶。

??????? 于是決定自己再重寫一下,雖說有盜版的嫌疑。不過還是借我碰到的一些問題,給大家點幫助。

首先還是簡單的提一下 三層架構吧:

  1、表現層(UI):通俗講就是展現給用戶的界面,即用戶在使用一個系統的時候他的所見所得。

  2、業務邏輯層(BLL):針對具體問題的操作,也可以說是對數據層的操作,對數據業務邏輯處理。

  3、數據訪問層(DAL):該層所做事務直接操作數據庫,針對數據的增添、刪除、修改、更新、查找等。

下面就介紹一下 范例的 步驟:

?

1.打開VS2008后,文件-->新建-->項目-->其他項目類型-->Visual Studio 解決方案-->空白解決方案 就起名為:MvcTest 吧
2.建立如圖

的項目,并在WEB-->App_Data建一個數據文件 DabaBase.mdf 里面建表:qzzm_user?? 表內:字段Name,類型:nvarchar(50) 非空

3.在WEB中引用BLL,Model層新建Post.aspx
Post.aspx 代碼如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Post.aspx.cs" Inherits="Post" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
??? <title>無標題頁</title>
</head>
<body>
??? <form id="form1" runat="server">
??? <div>
??????? <asp:TextBox ID="tb_name" runat="server"></asp:TextBox>
??????? <asp:Button ID="btn_post" runat="server" OnClick="btn_post_Click" Text="提交" />
??? </div>
??? </form>
</body>
</html>

Post.aspx.cs 先擱下等寫好類庫再寫
4.在Model 實體類中新建一個user.cs的類 (如果你已經按照上面的圖 將類都建好了 就只用看下面的代碼就好了)

user.cs代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Model
{
??? public class user
??? {
??????? public user() { }
??????? private string _Name;
??????? public string Name
??????? {
??????????? set { _Name = value; }
??????????? get { return _Name; }
??????? }
??? }
}

5.在DAL新建userdb.cs,并引用Model層?? (鼠標右鍵——添加引用——項目 選擇所需的引用)

userdb.cs代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Configuration;

namespace DAL
{
??? public class userdb
??? {
??????? public bool adduser(Model.user model)
??????? {
??????????? SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["sqlconn"].ConnectionString);//此行@
??????????? con.Open();
??????????? using (SqlCommand cmd = new SqlCommand("INSERT INTO qzzm_user(Name) VALUES(@Name)", con))
??????????? {
??????????????? cmd.Parameters.AddWithValue("@Name", model.Name);
??????????????? if (cmd.ExecuteNonQuery() > 0)
??????????????????? return true;
??????????????? else return false;
??????????? }
??????? }
??? }
}

代碼寫好了還不行,因為到時候調試的時候可能會出現 “當前上下文中不存在名稱“ConfigurationManager”?? ”(注釋 所在行),出現這種錯誤的原因是沒有引用System.Configuration 這項,注意這邊可不是代碼中的 using System.Configuration; 哦。此時就要添加System.Configuration的引用,方法同上面的引用Model層類似,在DAL層下 右鍵——添加引用——.NET?? 然后找到對應的 System.Configuration??? 確定即可。

(如果沒出現上面所說的問題當然是最好咯 O(∩_∩)O~)

6.在BLL中新建userbll.cs并引用DAL,Model層

userbll.cs代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BLL
{
??? public class userbll
??? {
??????? DAL.userdb db = new DAL.userdb();
??????? public bool adduser(Model .user model)
??????? {
??????????? return db.adduser(model);
??????? }
??? }
}

7.開始寫Post.aspx.cs

代碼如下:

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

public partial class Post : System.Web.UI.Page
{
??? protected void Page_Load(object sender, EventArgs e)
??? {

??? }
??? protected void btn_post_Click(object sender, EventArgs e)
??? {
??????? Model.user us = new Model.user();
??????? us.Name = tb_name.Text;
??????? BLL.userbll ub = new BLL.userbll();
??????? ub.adduser(us );
??? }
}

8.在Web.config文件中添加 缺少的數據鏈接字符串

找到<connectionStrings?? />?? 這一行,將其修改如下:
<connectionStrings>
??? <add name="sqlconn" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient" />
</connectionStrings>

9. 調試 執行

此時會提示 “無法直接啟動帶有……”的信息

此時我們只要找到 Post.aspx?? 右鍵——在瀏覽器中查看?? 即可 。??? 輸入數據——提交 ,即可到所建的數據庫中找到所輸入的數據。

一個簡單的三層架構例子 到此完成。

各層引用關系如下:

1) WEB引用 DAL,Model
2)BLL引用 DAL,Model
3)DAL引用Model (以及解決錯誤時 引用的System.Configuration )
4)Model無引用

好了既然有一個簡單的實例了,就讓我們進一步的深入其中吧,加油~~!

轉載于:https://www.cnblogs.com/xgcblog/archive/2011/05/10/2042345.html

總結

以上是生活随笔為你收集整理的一个简单的三层架构例子(.NET入门)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。