ASP.NET Spring.Net 入门2 简单入门示例--属性与构造函数注入
来源:互联网 发布:qq飞车网络异常 编辑:程序博客网 时间:2024/06/07 11:11
AdoNetUserInfoDal
using System;namespace Spring.Net{ public class AdoNetUserInfoDal : IUserInfoDal { public AdoNetUserInfoDal(string name, UserInfo userInfo) { Name = name; UserInfo = userInfo; } public UserInfo UserInfo { get; set; } public string Name { get; set; } public void Show() { Console.WriteLine("I'm AdoNet Dal ,Inject Name :Name=" + Name); Console.WriteLine("UserInfo ,Name=" + UserInfo.Name + " Age=" + UserInfo.Age); } }}
App.config
<?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, Spring.Net"> <property name="Name" value="John"/> <!--ref指向下面的属性注入--> <property name="UserInfo" ref="UserInfo"/> </object> <!--构造函数注入--> <object name="UserInfoDal2" type="Spring.Net.AdoNetUserInfoDal, Spring.Net"> <constructor-arg index="0" value="John"/> <constructor-arg index="1" ref="UserInfo"/> </object> <!--属性注入--> <object name="UserInfo" type="Spring.Net.UserInfo, Spring.Net"> <property name="Name" value="Lili"/> <property name="Age" value="15"/> </object> </objects> </spring></configuration>
EFUserInfoDal
using System;namespace Spring.Net{ public class EFUserInfoDal : IUserInfoDal { public EFUserInfoDal() { } public UserInfo UserInfo { get; set; } public string Name { get; set; } public void Show() { Console.WriteLine("I'm EF Dal,inject :Name=" + Name); Console.WriteLine("UserInfo ,Name=" + UserInfo.Name + " Age=" + UserInfo.Age); } }}
IUserInfoDal
namespace Spring.Net{ public interface IUserInfoDal { UserInfo UserInfo { get; set; } string Name { get; set; } void Show(); }}
Program
using Spring.Context;using Spring.Context.Support;using System;namespace Spring.Net{ class Program { static void Main(string[] args) { //第一步,引用Spring.Net程序集 Spring.Core.dll 和 Common.Logging.dll //第二步,添加Spring.Net配置节点 //第三步,配置object节点 //第四步,创建spring容器上下文 IApplicationContext ctx = ContextRegistry.GetContext(); //第五步,通过容器创建对象 IUserInfoDal efDal = ctx.GetObject("UserInfoDal") as IUserInfoDal; efDal.Show(); IUserInfoDal adoDal = ctx.GetObject("UserInfoDal2") as IUserInfoDal; adoDal.Show(); Console.ReadKey(); } }}
UserInfo
namespace Spring.Net{ public class UserInfo { public string Name { get; set; } public int Age { get; set; } }}
项目参考地址:
http://www.cnblogs.com/han1982/p/4177850.html
源码:
https://github.com/xiexiexin/SpringNetSample/Test2
0 0
- ASP.NET Spring.Net 入门2 简单入门示例--属性与构造函数注入
- ASP.NET Spring.Net 入门1 简单入门示例
- asp.net mvc controller 依赖注入入门
- Spring.Net 简单入门学习
- Spring.Net 简单入门学习
- ASP.NET MVC 中使用Spring.NET实现简单的属性注入
- ASP.NET Web API 入门示例详解
- Spring入门_03_构造注入
- spring简单入门示例
- spring简单入门示例
- spring简单入门示例
- spring简单入门示例
- Spring 入门学习手札(四)通过构造函数注入
- ASP.NET MVC3.0简单入门(0)
- C# ASP.net 入门之简单通讯录
- Asp.Net EF Code First 简单入门
- Spring入门_02_属性注入
- asp.net----构造函数
- 剑指offer-面试题11-数值的整数次方
- zoj 3635 Cinema in Akiba 二分+树状数组
- 设置spring-boot的logging
- 【Oracle】数据库错误的总结
- 事件操作的简单要点汇总
- ASP.NET Spring.Net 入门2 简单入门示例--属性与构造函数注入
- 登录案例
- C语言数据类型简介
- 让source insight支持AT&T汇编语法高亮
- 函数的调用过程(栈帧)
- CMD命令下,"找不到或无法加载主类"
- 未来科技业界的10大风口
- AndroidStudio 更改变量名、文件名快捷键
- java中成员变量和局部变量的区别