Spring.NET

准备工作

现在手头还没有Spring.NET的朋友,先让我们来到这里下载一份(出于功能考虑推荐使用1.1 Preview 3版的)

如同使用其他第三方工具一样,依据.NET版本引用好Spring.Core.dll程序集,然后在配置文件中加入这么一段

step 1:

<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">

</objects>
</spring>


OK,
第一步工作做好.

不知道,各位在外漂泊的单身汉是不是有跟我一样的苦恼: 快餐吃来吃去,晚上经常不知道吃啥好,,我就拿这个做DEMO.

先定义一个接口咯

step2:

public interface 晚上吃啥
{
   
void 吃饭();
}


口味比较重,一般比较喜欢[吃辣椒炒肉褒仔饭] [吃水煮鱼]

step3:

public class 吃辣椒炒肉煲仔饭 : 晚上吃啥
{
    
public void 吃饭()
   
{
      Console.WriteLine("
吃辣椒炒肉煲仔饭咯");
    }
}

public class 吃水煮鱼 : 晚上吃啥
{
   
public void 吃饭()
   
{
      Console.WriteLine("
吃水煮鱼咯");
    }
}


写好了,我也决定了:水煮鱼
config文件的<objects></objects>之间加上一句

step 4:

<objects xmlns="http://www.springframework.net">

<object id="晚餐" type="SpringDemo_1.吃水煮鱼,SpringDemo_1" />

</objects>


美食当前,具体怎么享用呢? 看这里

step 5:

[STAThread]
        
static void Main(string[] args)
        
{
             Spring.Context.IApplicationContext ctx =
                 Spring.Context.Support.ContextRegistry.GetContext();

            
晚上吃啥 temp = ctx["晚餐"] as 晚上吃啥;

             temp.
吃饭();
         }


运行一下, 看到结果了吧    hoho~~

--------------------------------------------------------------------------
现在让我们回过过头来看看,具体每一步都做了什么

step 1:
<configSections></configSections>
配置节,定义了<spring>配置组
<context><resource uri="{0}" /></context>  
Spring.NET
里默认提供了三种资源描述方式:
1) <resource uri="config://spring/objects" />
    
表示在config配置文件的<spring><objects>配置节内部定义了<object />
2) <resource uri="~/yourAppContext.xml" />
      
表示在程序的根目录下的yourAppContext.xml文件里定义了<object />
3)<resource uri="assembly://assemblyName/namespace/yourAppContext.xml" />
      
表示yourAppContext.xml设为了嵌入式资源,并在其中定义了<object />

step 2:

自定义的行为规范

step 3:

行为规范的具体实现

step 4 :

通过Spring.NETIoC容器来配置由哪个符合行为规范的对象来执行行为

step 5:

执行行为,具体由谁执行,调用者(main()方法)不知情。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程通过实际项目融入常用开发技术架构,讲授风格独特,提供详细上课日志及答疑,赠送配套的项目架构源码注释详细清晰且表达通俗,均能直接在实际项目中应用,正真的物超所值,价格实惠任务作业:综合运用《C#/.Net企业级系统架构设计实战精讲教程》课程所学知识技能设计一个学生成绩管理系统的架构。要求:1.系统基于MVC的三层架构,各层单独建不同的解决方案文件夹。2.采用Model First开发方式,设计架构时只需要设计学生表(TbStudent)和课程表(TbCourse)。学生表必须有的字段是ID、stuName、age;课程表必须有的字段是ID、courseName、content。3.数据访问层采用Entity Framework或NHibernate来实现,必须封装对上述表的增删改查方法。4.必须依赖接口编程,也就是必须要有数据访问层的接口层、业务逻辑层的接口层等接口层。层层之间必须减少依赖,可以通过简单工厂或抽象工厂。5.至少采用简单工厂、抽象工厂、Spring.Net等技术中的2种来减少层与层之间的依赖等。6.封装出DbSession类,让它拥有所有Dal层实例和SaveChanges方法。7.设计出数据访问层及业务逻辑层主要类的T4模板,以便实体增加时自动生成相应的类。8.表现层要设计相关的控制器和视图来验证设计的系统架构代码的正确性,必须含有验证增删改查的方法。9.开发平台一定要是Visual Studio平台,采用C#开发语言,数据库为SQL Server。10.提交整个系统架构的源文件及生成的数据库文件。(注意: 作业需写在CSDN博客中,请把作业链接贴在评论区,老师会定期逐个批改~~)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值