搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (五)测试你的成果

          本篇文章:主要介绍怎么使用这套框架。在做好配置等前期工作后。我们就是要与Mvc进行融合了。由于Mvc本人也是个初级入门者。对于这部分的研究还不是很深入。但是基本应用已经可以了。下面就让我们开始一个简单的应用实例吧:

第一步:添加control

在web项目中的controls文件夹下面添加一个UserController.cs文件。【这里可以把Controls单独放到一个项目中,这里只是搭建框架的演示,就不做那么复杂了】

添加代码如下所示:

代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc.Ajax;
using Spring.Context.Support;
using MyWeb.WebTemp.IBLL;

namespace MyWeb.WebTemp.Controllers
{
public class UserController : Controller
{
//
// GET: /User/
private IUserService userService;

public IUserService UserService
{
get { return this.userService; }
set { this.userService = value; }
}

public ActionResult Index()
{
var webApplicationContext
=
ContextRegistry.GetContext()
as WebApplicationContext;
UserService
=
webApplicationContext.GetObject(
"UserService") as IUserService;//从spring配置中获取Userservice
IList<MyWeb.WebTemp.Model.User> users = UserService.GetAllUsers();
ViewData[
"Users"] = users;
return View("ShowAllUsers");
}

}
}

当然要添加相关的引用。这就不用说了。懂mvc的一看就知道是什么意思。

 

第二步:添加显示的view

在web项目下的Views文件夹下添加User文件夹。然后添加一个用于显示的ShowAllUsers.aspx   view。

view的代码如下:

代码
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
ShowAllUsers
</asp:Content>

<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">

<h2>ShowAllUsers</h2>
<table>
<tr>
<td>用户名</td><td>密码</td>
</tr>

<%IList<MyWeb.WebTemp.Model.User> userList = ViewData["Users"] as List<MyWeb.WebTemp.Model.User>; %>
<%for (int i = 0; i < userList.Count; i++) %>
<%{ %>
<tr>
<td> <%=userList[i].Name%></td>
<td><%=userList[i].PassWord %></td>
</tr>
<%} %>
</table>

</asp:Content>

第三步:在首页中添加一个连接到我们的view

下面是Home文件夹下index.aspx代码:

代码
<%@ Page Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>

<asp:Content ID="indexTitle" ContentPlaceHolderID="TitleContent" runat="server">
Home Page
</asp:Content>

<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
<h2><%= Html.Encode(ViewData["Message"]) %></h2>
<p>
To learn more about ASP.NET MVC visit
<a href="http://asp.net/mvc" title="ASP.NET MVC Website">http://asp.net/mvc</a>.
</p>
<hr />
<p>
To my page
<a href="User/Index" title="ASP.NET MVC Website"> show all users</a>.
</p>
<hr />
</asp:Content>

 

 

运行,然后点击连接,最后的效果如下:

点击连接后:

 

最终我们的结果就是这样子。最后的结果虽然不是很绚丽。但是整个框架已经有了。

 

项目展望:

我们可以将controls放到一个单独的项目中。然后可以设置一个工厂类来获取业务逻辑层的实体对象。

另外在ui层面我们可以采用extjs等ui框架,让页面更加绚丽。

拓展阅读:Spring.Net+NHibenate+Asp.Net mvc +ExtJs 系列 1---准备

Extjs学习好去处:

【原】Ext2.2学习系列:ExtJS与.NET结合开发实例--全部Ext2.2示例--索引贴

 

相关下载

项目中用到的:spring.net Nhibernate控件下载

项目:源代码下载

 

文章索引:

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (一)

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (二)创建你的项目

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (三)实现数据库接口层和业务逻辑层

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (四)配置全攻略

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (五)测试你的成果

搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (六)写在后面的话

posted @ 2010-09-07 11:52  FlyDragon  阅读(16240)  评论(37编辑  收藏  举报