本篇文章:主要介绍怎么使用这套框架。在做好配置等前期工作后。我们就是要与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控件下载
项目:源代码下载