C# asp.Net 3階層アーキテクチャ
3956 ワード
三層アーキテクチャ:PL(present layer)層、BLL(business logical layer)層、DAL(data access layer)層を指し、全体的な設計の思想である.
PL層:表現層であり、主にデータを展示するために用いられる.BLL層:処理層で、主にデータを処理するために使用されます.DALレイヤ:主にデータベースからデータを取得します.PLはユーザ向け,DALはデータベース向けである.
具体的には、PLはwebアプリケーションであり、BLLを呼び出す方法でBLLにデータを渡すか、BLLから処理されたデータを取得する.BLLレイヤはクラスライブラリであり、DALメソッドを呼び出してデータを取得したり、データ処理結果をDALに渡したりする.
実装方法:
新規プロジェクト:
1.新規作成→プロジェクト→空のソリューション
2.右クリック・空のソリューション-新規の追加-Webアプリケーション(PL層、もちろんWebフォームも追加
)
3.右クリック空のソリューション-新規アイテムの追加-クラスライブラリ(BLLレイヤ)
4.右クリック空のソリューション-新規アイテムの追加-クラスライブラリ(DALレイヤ)
次に参照を追加します.
右クリックPL層の参照、BLL層への参照を追加
、BLLレイヤの参照を右クリックし、DALレイヤへの参照を追加
注意:クラスライブラリを共有に変更すると、他のクラスライブラリ(PL,BLL)のクラスにアクセスできます.
テスト:
PL中WebForm 1.aspxのコード:
PL層:表現層であり、主にデータを展示するために用いられる.BLL層:処理層で、主にデータを処理するために使用されます.DALレイヤ:主にデータベースからデータを取得します.PLはユーザ向け,DALはデータベース向けである.
具体的には、PLはwebアプリケーションであり、BLLを呼び出す方法でBLLにデータを渡すか、BLLから処理されたデータを取得する.BLLレイヤはクラスライブラリであり、DALメソッドを呼び出してデータを取得したり、データ処理結果をDALに渡したりする.
実装方法:
新規プロジェクト:
1.新規作成→プロジェクト→空のソリューション
2.右クリック・空のソリューション-新規の追加-Webアプリケーション(PL層、もちろんWebフォームも追加
)
3.右クリック空のソリューション-新規アイテムの追加-クラスライブラリ(BLLレイヤ)
4.右クリック空のソリューション-新規アイテムの追加-クラスライブラリ(DALレイヤ)
次に参照を追加します.
右クリックPL層の参照、BLL層への参照を追加
、BLLレイヤの参照を右クリックし、DALレイヤへの参照を追加
注意:クラスライブラリを共有に変更すると、他のクラスライブラリ(PL,BLL)のクラスにアクセスできます.
テスト:
PL中WebForm 1.aspxのコード:
<form id="form1" runat="server">
<div>
10+12=
<label id="Label1" runat="server" text="Label"/><br/>
10*12=<label id="Label2" runat="server" text="Label"/><br/>
<button id="Button1" runat="server" text="Button" onclick="Button1_Click"/>
<br/>
</div>
</form>
</code></pre>
<p><span style="font-size:24px;">PL <span style="font-size:24px;">WebForm1.aspx.cs </span></span></p>
<p><span style="font-size:24px;"/></p>
<pre><code>using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace Web
{
public partial class WebForm1 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
BLL.Calculate c = new BLL.Calculate();
Label1.Text = "" + c.add(10, 12);
Label2.Text = "" + c.mul(10, 12);
}
}
}</code></pre>
<p><span style="font-size:24px;">BLL Calculate.cs :</span></p>
<p><span style="font-size:24px;"/></p>
<pre><code>using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
public class Calculate
{
DAL.Class1 c = new DAL.Class1();
public int add(int x, int y)
{
return c.getX()+c.getY();
}
public int mul(int x, int y)
{
return c.getX()* c.getY();
}
}
}
</code></pre>DAL class1.cs :
<p><span style="font-size:24px;"/></p>
<pre><code>using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DAL
{
public class Class1
{
public int getX()
{ return 10; }
public int getY()
{
return 12;
}
}
}</code></pre>
<p><span style="font-size:24px;"> :</span></p>
<p><span style="font-size:24px;"><br/></span></p>
<p><span style="font-size:24px;"><br/></span></p>
<p><span style="font-size:24px;"> :</span></p>
<p><span style="font-size:24px;">1. , , 。 + +BLL( DAL)。</span></p>
<p><span style="font-size:24px;">2. 。 :</span></p>
<p><span style="font-size:24px;">http://www.onlinedown.net/soft/63546.htm<br/></span></p>
</div>
</div>
</div>
</div>