ASP.NET Spring.Net 入门1 简单入门示例

来源:互联网 发布:linux 剪辑 编辑:程序博客网 时间:2024/06/03 20:03

Spring.Net


简介

  • 从http://www.springframework.net/download.html 下载spring.NET,解压后得到源码和编译好的dll
  • 新建项目
  • 添加Common.Logging.dll、Spring.Core.dll引用

Spring.Net的IOC配置可以采用独立的xml,也可以使用应用程序的配置文件。

配置写入应用程序配置文件中

<?xml version="1.0" encoding="utf-8" ?><configuration>  <!--一定要在紧跟着configuration下面添加-->  <configSections>    <!--跟下面Spring.Net节点配置是一一对应关系-->    <sectionGroup name="spring">      <section name="context" type="Spring.Context.Support.ContextHandler, Spring.Core"/>      <section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />    </sectionGroup>  </configSections>  <startup>    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />  </startup>  <!--Spring.Net节点配置-->  <spring>    <context>      <!--容器配置-->      <resource uri="config://spring/objects"/>    </context>    <objects xmlns="http://www.springframework.net">      <!--这里放容器里面的所有节点-->      <description>An  example that demonstrates simple IoC features.</description>      <!--name 必须要唯一的,type=类的全名称,所在的程序集-->      <object name="UserInfoDal" type="Spring.Net.EFUserInfoDal">      </object>    </objects>  </spring></configuration>

Program.cs

using Spring.Context;using Spring.Context.Support;using Spring.Net;using System;namespace ConsoleApplication1{    class Program    {        static void Main(string[] args)        {            //Spring.Net 创建实例的方式转为容器帮我们创建            //创建spring容器上下文            IApplicationContext ctx = ContextRegistry.GetContext();            //通过容器创建对象            IUserInfoDal efDal = ctx.GetObject("UserInfoDal") as IUserInfoDal;            efDal.Show();            Console.ReadKey();        }    }}

IUserInfoDal.cs

namespace Spring.Net{    public interface IUserInfoDal    {        void Show();    }}

EFUserInfoDal

using System;namespace Spring.Net{   public class EFUserInfoDal: IUserInfoDal    {        public void Show()        {            Console.WriteLine("I'm EF Dal");        }         }}

源码地址:
https://github.com/xiexiexin/SpringNetSample/Test1

1 0