NBearV3教程——MVP(Model/View/Presenter)篇

版本

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包中的tutorials\MVP_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的类库工程。添加该工程到dist\NBear.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}

时间: 2024-09-16 02:19:49

NBearV3教程——MVP(Model/View/Presenter)篇的相关文章

ASP.NET MVC5 + EF6 入门教程 (5) Model和Entity Framework

原文:ASP.NET MVC5 + EF6 入门教程 (5) Model和Entity Framework 文章来源: Slark.NET-博客园 http://www.cnblogs.com/slark/p/mvc-5-ef-6-get-started-model.html  上一节:ASP.NET MVC 5 入门教程 (4) View和ViewBag 下一节:ASP.NET MVC5 + EF6 入门教程 (6) View中的Razor使用 源码下载:点我下载 一.创建Model MVC中

Excel2003入门动画教程专辑(共68篇)

Excel2003入门动画教程专辑(共68篇)请倒序查看教程 Excel防止重复录入数据动画教程 发布日期: 2012-05-05 <Excel2003入门动画教程68.Excel防止重复录入数据>. 演示动画 操作步骤 员工的身份证号码应该是唯一的,为了在Excel中防止重复输入,我们用"数据有[阅读全文] -------------------------------- Excel表格行列互换动画教程 发布日期: 2012-05-05 <Excel2003入门动画教程67.

sql入门教程:SQL CREATE VIEW

sql入门教程:SQL CREATE VIEW 有一种意见认为是一个视图. 创建期的SQL声明 在SQL ,有一种意见是一个虚拟的基础上表的结果集的语句. 有一种意见认为包含行和列,就像一个真正的表.该领域的观点,领域,从一个或多个真正的表在数据库中. 您可以添加SQL函数,在那里,并加入声明,以期和目前的数据,如果数据是来自一个单一的表. 的SQL CREATE VIEW语法 CREATE VIEW view_name AS SELECT column_name(s) FROM table_n

Model/View Programming

http://doc.qt.digia.com/4.7/model-view-programming.html Model/View Programming Introduction to Model/View Programming Qt 4 introduced a new set of item view classes that use a model/view architecture to manage the relationship between data and the wa

NBearV3教程——Cache篇

版本 1.0 [2006-11-18] 简介 本教程介绍NBearV3中的查询缓存支持. 目标 通过本教程,读者应能够全面掌握内置于NBearV3的查询缓存的使用. 代码 本教程不包含任何演示代码. 时间 <10分钟. 正文 1 配置及启用NBearV3中的缓存功能 要启用缓存支持,需要在Web.config或App.config中添加cacheConfig配置节: <?xml version="1.0" encoding="utf-8" ?> &

NBearV3教程——实体配置文件加密篇

版本 1.0 [2006-11-18] 简介 本教程介绍NBearV3中的实体配置文件的加密支持. 目标 通过本教程,读者应能够全面掌握加密实体配置文件和如何结合使用ASP.NET的配置节加密功能,实现部署环境关联的实体配置加密. 代码 本教程不包含任何演示代码. 时间 <10分钟. 正文 1 配置及启用实体配置文件加密 要启用实体配置文件加密,需要如下设置entityConfig配置节: <?xml version="1.0" encoding="utf-8&q

NBearV3教程——Web篇

内容目录 1.Helper Methods - 辅助Web常用方法 2.ClientScriptFactory - 辅助生成客户端JS脚本 3.LoadResources()/GetString() - 多语言支持 4.AjaxHelper - 基于UserControl的AjaxHelper集成 从SF.NET下载NBear最新版本程序集.源码及使用教程 0.重要说明 本文讨论的内容只涉及NBear.Web这一个程序集,如果要在您自己的Web项目中使用本文所讨论的功能,只需要添加到NBear.

Photoshop自然美肤教程—简单实用纹理保留篇

教程 中国PHOTOSHOP联盟 以前我做人物美肤处理最后一步用历史记录还原以前的皮肤,效果也不错,但是最后不太好调整,不如下面加一个原图的增强图层好控制. 我喜欢用调整和蒙板,大家应该注意到了,主要是好改动. 我这篇教程主要讲两点: 一.去斑 二.对某一块地方的颜色较正 原照片 处理后,其实她只是皮肤不太好,还是蛮可爱的 处理掉大块的斑 复制刚才图层为图层二,对其进行传统磨皮处理 第一种方法:历史记录画笔磨皮法 1.对图片高斯模糊 2.设置如图,并反回上一历史记录 3.用历史记录画笔涂,留出五

ASP教程:第十八篇 堵住ASP漏洞

无论你相不相信,通过 asp,可能可以很方便地入侵 web server.窃取服务器上的文件.捕获 web 数据库等系统的用户口令,甚至恶意删除服务器上的的文件,直至造成系统损坏,这些都决非耸人听闻,而且都确确实实发生过,本文将向你一一揭示这些 asp 存在的漏洞,并提出一些防范意见. 上一篇中给大家着重谈了"ADO 存取数据库时如何分页显示"的问题,有位朋友来信给我指出我在计算页面总数时忽略了 Recordset 对象的一个重要参数"PageCount",它能在给