首页 > 代码库 > Spring.Net 简单实例-01(IOC)

Spring.Net 简单实例-01(IOC)

1.话不多说看操作.新建"Windows窗体应用程序"

技术分享

2:通过配置文件创建IOC容器

  首先引入安装包

技术分享

3:定义一个接口(更好的体现封装性,当然也可以直接使用类)

技术分享

  定义一个类,实现接口

技术分享

 

 4:配置App.config文件

技术分享

技术分享
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <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>
  <spring>
    <context>
      <resource uri="config://spring/objects"/>
    </context>
    <objects xmlns="http://www.springframework.net">
      <description>An  example that demonstrates simple IoC features.</description>
      <!--//type属性值必须是包含程序集名称在内的类型全名    "命名空间,程序集"-->
      <object name="UserInfoService"  type="YK.OA.SpringNet.UserInfoService, YK.OA.SpringNet">
        
        </object>
    </objects>
  </spring>
</configuration>
App.config

 5:添加测试按钮技术分享

技术分享
using Spring.Context;
using Spring.Context.Support;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace YK.OA.SpringNet
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IApplicationContext ctx = ContextRegistry.GetContext();
            //GetObject获得app配置文件的objext项=>创建实例
            IUserInfoService lister = (IUserInfoService)ctx.GetObject("UserInfoService");
            MessageBox.Show(lister.ShowMsg());
        }
    }
}
按钮代码(注意命名空间)

6:运行

技术分享

 

Spring.Net 简单实例-01(IOC)