Welcome

首页 / 软件开发 / .NET编程技术 / NBearV3教程——MVP(Model/View/Presenter)篇

NBearV3教程——MVP(Model/View/Presenter)篇2010-07-13 cnblogs teddyma版本

1.1 [2007-2-12]

简介

本教程在《NBearV3 Step by Step教程——IoC篇》的基础上,演示如何基于NBearV3的MVP模块实现基于NBear的IoC的MVP模式的过程。您将看到,利用封装了NBear的IoC模块的NBear.MVP模块,不仅能大大加强系统表现层的可测试性,同时能充分利用NBear已有的IoC模块获得依赖注入能力及基于IoC的分布式服务支持。

注:在阅读本文之前,建议读者先阅读《NBearV3 Step by Step教程——IoC篇》以掌握NBearV3中有关ORM和IoC的基本知识。

目标

通过本教程,读者应能够全面掌握使用NBearV3的MVP模块实现表现层MVP模式。

代码

本教程演示创建的所有工程和代码,包含于可以从nbear.org下载的NBearV3最新源码zip包中的tutorialsMVP_Tutorial目录中。因此,在使用本教程的过程中如有任何疑问,可以直接参考这些代码。

时间

<45分钟。

正文

Step 1 下载NBearV3最新版本及准备

1.1访问http://nbear.org,下载NBearV3的最新版本到本地目录。

1.2 将下载的zip文件解压至C:,您将看到,加压后的NBearV3目录中包括:dist、doc、cases、src、tutorials等目录。其中,在本教程中将会使用的是dist目录中的所有release编译版本的dll和exe和tutorials目录中之前的IoC基础教程。

1.3 将tutorials目录中的整个IoC_Tutorial目录复制到任意其它位置,并命名为MVP_Tutorial,我们将以IoC_Tutorial为基础,演示NBearV3中基于IoC的分布式开发的知识。

Step 2 定义View和Presenter

2.1 将MVP_Tutorial中的IoC_Tutorial.sln重命名为MVP_Tutorial.sln,并在VS2005开发环境中打开。

2.2 我们知道MVP模式中,有Model、View和Presenter三个部分。在NBear.MVP中,Model部分,我们直接使用基于NBear.IoC的Service,因此,对于原来的IoC教程的代码,我们只需要额外定义View和Presenter的代码。为了充分解耦M、V、P三部分,我们将用到接口、范型和IoC技术。

2.3 为sln新增一个名叫ViewInterfaces的类库工程。添加该工程到distNBear.Common.dll和Entities工程的引用。在ViewInterfaces中增加一个ISampleView.cs文件,包含如下内容:

1using System;
2using Entities;
3
4namespace ViewInterfaces
5{
6 public interface ISampleView
7 {
8 int CategoryID { get; }
9 Category[] Categories { set; }
10 Product[] ProductsInCategory { set; }
11 }
12}