17、ASP.NET MVC入门到精通——Spring.net入门
Spring.NET环境准备
pring.NET 1.3.2下载地址:http://down.51cto.com/data/861700
下载后解压
Spring.NET-1.3.2.7z:这个里面有我们需要用到的所有东西。
Spring.NET-1.3.2.exe:安装文件
Spring.NET-1.3.2-API.chm:帮助文档
NHibernate 3.2 的下载地址:
http://sourceforge.net/projects/nhibernate/files/NHibernate/3.2.0GA/
点击上面红框就可以进行下载了。
1、我们先点击安装文件Spring.NET-1.3.2.exe进行安装,安装过程点击下一步就可以了。
完成后,你会看到如下界面:
2、打开Spring.NET的安装目录,可以看到如下界面:
3、展开Spring.Net安装目录,
主要文件夹说明:
lib:常用的程序集,其中包含了 NHibernate 3.2 的程序集
schema:Xml 的架构文件 ,提供XML的智能感知功能。操作说明:将 schema 中的 .xsd文件 复制到 Visual Studio 的安装目录下的 Xml\Schemas 文件夹中就可以实现xml智能提示了
配置Spring.Net网站
1、新建一个web网站,添加一个Index.aspx页面。
2、添加程序集 Spring.Core.dll 和 Spring.Web.dl,Common.Logging.dll的引用
为了方便管理,新建一个BLL文件夹,然后从Spring.Net的安装目录拷贝这三个dll程序集过来,然后添加对这三个程序集的引用。
我用的是VS2010,所以拷贝4.0目录下面的dll文件。
Spring.NET\Spring.NET\Spring.NET-1.3.2\Spring.NET\bin\net\4.0\release目录下面
3、配置web.config
在网站的 web.config 配置文件中,进行如下配置
- <configuration>
- <configSections>
- <!-- Spring 的配置 -->
- <sectionGroup name="spring">
- <section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web"/>
- </sectionGroup>
- </configSections>
- <spring>
- <context>
- </context>
- </spring>
- <system.web>
- <compilation debug="false" targetFramework="4.0" />
- <httpModules>
- <!--Spring 提供的 Module-->
- <add name="Spring" type="Spring.Context.Support.WebSupportModule, Spring.Web"/>
- </httpModules>
- <httpHandlers>
- <!--Spring 提供的处理程序-->
- <add verb="*" path="*.aspx" type="Spring.Web.Support.PageHandlerFactory, Spring.Web"/>
- <!--取消 Spring.NET 对于 Web 服务的处理-->
- <add verb="*" path="*.asmx" type="Spring.Web.Services.WebServiceHandlerFactory, Spring.Web"/>
- <add verb="*" path="ContextMonitor.ashx" type="Spring.Web.Support.ContextMonitor, Spring.Web"/>
- <add verb="*" path="*.ashx" type="Spring.Web.Support.DefaultHandlerFactory, Spring.Web"/>
- </httpHandlers>
- </system.web>
- </configuration>
现在,页面应该可以正常浏览了。从此以后的页面将通过 Spring.NET 创建与管理。
第一个程序“Hello,World”
1、新建一个类Framework.cs
- public class Framework
- {
- public Framework()
- {
- //
- //TODO: 在此处添加构造函数逻辑
- //
- }
- public string Name { set; get; }
- }
2、在Index.aspx页面添加一个label
- <div>
- <h1><asp:Label runat="server" ID="lblFramework"></asp:Label></h1>
- </div>
3、Index.aspx.cs
- public partial class Index : System.Web.UI.Page
- {
- // 定义一个注入点
- public Framework FrameworkName { set; get; }
- protected void Page_Load(object sender, EventArgs e)
- {
- this.lblFramework.Text = this.FrameworkName.Name;
- }
- }
定义对象主要有两种方式,直接定义在 web.config 中,或者定义在外部的配置文件中。
4、直接定义在 web.config 中,使用 Spring.Context.Support.DefaultSectionHandler。这样可以在配置文件中直接定义。
- <configSections>
- <!-- Spring 的配置 -->
- <sectionGroup name="spring">
- <section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web"/>
- <!-- 支持在 web.config 中定义对象 -->
- <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
- </sectionGroup>
- </configSections>
- <spring>
- <context>
- <resource uri="config://spring/objects"/>
- </context>
- <!-- 直接定义在 web.config 中的对象 -->
- <objects>
- <object id="framework" type="Framework"><!--类名-->
- <property name="Name" value="Hello,world"/><!--属性名称,值-->
- </object>
- <!-- 页面对象 -->
- <object type="~/Index.aspx">
- <!-- ref 表示引用的对象 -->
- <property name="FrameworkName" ref="framework"/><!--Index.aspx页面的属性名称-->
- </object>
- </objects>
- </spring>
5、浏览Index.aspx
6、在单独的配置文件中配置对象。
在网站中创建一个名为 Config 的文件夹,以保存独立的配置文件。
在 Config 文件夹中,创建一个名为 objects.xml 的 Xml 配置文件。添加名为 objects 的根元素,添加默认命名空间 xmlns="http://www.springframework.net"
找到如下架构文件,复制到vs安装目录:C:\Program Files (x86)\Microsoft Visual Studio 10.0\Xml\Schemas
这样,我们在xml文件中就具备智能感知功能了。
添加原来对象定义到这里。
- <?xml version="1.0" encoding="utf-8" ?>
- <objects xmlns="http://www.springframework.net"><!--默认命名空间-->
- <object id="framework" type="Framework">
- <!--类名-->
- <property name="Name" value="Hello,China"/>
- <!--属性名称,值-->
- </object>
- <!-- 页面对象 -->
- <object type="~/Index.aspx">
- <!-- ref 表示引用的对象 -->
- <property name="FrameworkName" ref="framework"/>
- <!--Index.aspx页面的属性名称-->
- </object>
- </objects>
将原来在 Web.config 中配置的 objects 配置节删除,将原来 context 配置节中的配置替换为如下的内容。
- <context>
- <resource uri="~/Config/objects.xml"/>
- <!--<resource uri="config://spring/objects"/>-->
- </context>
6、重新浏览Index.aspx
17、ASP.NET MVC入门到精通——Spring.net入门的更多相关文章
- 25、ASP.NET MVC入门到精通——Spring.net-业务层仓储
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 上一节,我们已经把项目框架的雏形搭建好了,那么现在我来开始业务实现,在业务实现的过程当中,不断的来完善我们现有的框架. 1.假设我们来做一个 ...
- Android Studio2.0 教程从入门到精通Windows版 - 入门篇
http://www.open-open.com/lib/view/open1468121363300.html 本文转自:深度开源(open-open.com)原文标题:Android Studio ...
- [转]ASP.NET MVC 5 学习教程:快速入门
本教程将使用Visual Studio 2013手把手教你构建一个入门的ASP.NET MVC5 Web应用程序.本教程配套的C#源码工程可通过如下网址下载:C#版本源码链接.同时,请查阅 Build ...
- ASP.NET MVC 5 学习教程:快速入门
起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Se ...
- 2、ASP.NET MVC入门到精通——Entity Framework入门
实体框架(Entity Framework)简介 简称EF 与ADO.NET关系 ADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R ...
- nginx在asp.net mvc项目中 配置 初步快速入门
nginx 官方下载地址 http://nginx.org/en/download.html 一般.net项目要运行在IIS环境下,自然选择windows版下载 我这里下载了nginx/Windows ...
- Android开发 Android Studio2.0 教程从入门到精通Windows版 - 入门篇
第一篇 介绍了Android Studio开发环境以及Genymotion虚拟机安装方法,本节将给大家介绍如何使用Android Studio开发应用. 开发第一应用 可以开发属于自己的应用,是否有点 ...
- ASP.NET MVC4入门到精通系列目录汇总
序言 最近公司在招.NET程序员,我发现好多来公司面试的.NET程序员居然都没有 ASP.NET MVC项目经验,其中包括一些工作4.5年了,甚至8年10年的,许多人给我的感觉是:工作了4.5年,We ...
- ASP.NET MVC4入门到精通系列目录汇总(转)
序言 最近公司在招.NET程序员,我发现好多来公司面试的.NET程序员居然都没有 ASP.NET MVC项目经验,其中包括一些工作4.5年了,甚至8年10年的,许多人给我的感觉是:工作了4.5年,We ...
随机推荐
- 特邀美国EMC实战专家Mark来华授课
“轻松搞定EMC-PCB和系统设计”课程介绍 本次课程特邀美国EMC领域权威专家Mark Montrose主讲,将涵盖满足产品电磁兼容性和信号完整性的基本原理.课程涉及多个领域,不仅仅针对PCB设计, ...
- Redis命令笔记
一.string类型:(1)set :设置key对应的值为string类型的value,例:set name helloworld(2)get :获取key对应的值为string类型的value,例: ...
- JavaSript模块规范 - AMD规范与CMD规范介绍(转)
JavaSript模块规范 - AMD规范与CMD规范介绍 JavaSript模块化 在了解AMD,CMD规范前,还是需要先来简单地了解下什么是模块化,模块化开发? 模块化是指在解决某一个复杂问题或者 ...
- oracle数据库表的导入导出cmd命令大全
在实际的项目开发中经常会遇到导入导出oracle数据库中的表,以下是常用的一些cmd命令: 一.数据表的导出 1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daoch ...
- iOS之Core Data及其线程安全
一.简介 Core Data是iOS5之后才出现的一个框架,它提供了对象-关系映射(ORM)的功能,即能够将OC对象转化成数据,保存在SQLite数据库文件中,也能够将保存在数据库中的数据还原成OC对 ...
- document.getElementById()与 $()区别
document.getElementById()返回的是DOM对象,而$()返回的是jQuery对象 什么是jQuery对象? ---就是通过jQuery包装DOM对象后产生的对象.jQuery对象 ...
- AngularJS之初级Route【一】(六)
前言 这一节我们来讲讲AngularJS中的路由以及利用AngularJS在WebAPi中进行CRUD.下面我们一起来看看. 话题 当我们需要进行路由映射时即用到$route服务,在AngularJS ...
- 基于Bootstrap里面的Button dropdown打造自定义select
最近工作非常的忙,在对一个系统进行改版.项目后台是MVC1.0开发的,但是前端部分已经改过几个版本,而已之前的设计师很强大,又做设计又做前端开发.而已很时尚和前沿,使用了一直都很热门的Bootstra ...
- Kooboo CMS 之TextContent详解
TextCotent 在Kooboo.CMS.Content下面,在View中有使用到这个模型层. TextContent继承了ContentBase,而ContentBase是由2个部分类组成的,一 ...
- 【JUC】JDK1.8源码分析之ThreadPoolExecutor(一)
一.前言 JUC这部分还有线程池这一块没有分析,需要抓紧时间分析,下面开始ThreadPoolExecutor,其是线程池的基础,分析完了这个类会简化之后的分析,线程池可以解决两个不同问题:由于减少了 ...