最近在项目中用到了Spring.NET,使用它来实现业务层和UI层解耦。使用过程中难免遇到问题,现把遇到的一些问题整理出来,留作笔记。

使用的开发工具是vs2017,.netframework 4.6

(1)使用 Nuget 安装 Spring.Core 包

使用Spring.NET需要 Spring.Core 库的支持,在 Nuget 中安装了Spring.Core 包后会在项目上自动引入相关的引用。

(2)使用 Nuget 安装 Spring.Web 包

(3)使用 Nuget 安装 Spring.Web.Mvc 包,我选择安装Spring.Web.Mvc5包

(4)接下来Spring.Net节点配置,这里把节点单独配置在对应的xml文件中

业务逻辑层节点配置bll.xml

UI层节点配置controllers.xml

(5)修改配置文件Web.config,主要是红框中的两部分

(6)修改Global.asax文件,认为这个是很重要的一步(在配置的过程中,忘记了这一步没有修改,一直报错,纠结了好久才找到是这个文件没有修改),修改红框中的内容

(7)一切配置OK后,就可以直接调用了

注意:配置完成后,可能会报System.Web.Http相关的错误,我在第一次调用时就报了缺少System.Web.Http相关dll的错误,使用 Nuget 安装 Microsoft.AspNet.WebApi 包之后问题就解决了。

Spring.NET在MVC中实现业务层和UI层解耦的更多相关文章

  1. asp.net mvc 简单项目框架的搭建(二)—— Spring.Net在Mvc中的简单应用

    摘要:上篇写了如何搭建一个简单项目框架的上部分,讲了关于Dal和Bll之间解耦的相关知识,这篇来把后i面的部分说一说. 上篇讲到DbSession,现在接着往下讲. 首先,还是把一些类似的操作完善一下 ...

  2. spring.Net之Ioc在MVC中的使用

    1.引入dll Common.Logging.dll Spring.Core.dll Spring.Web.dll Spring.Web.Extensions.dll Spring.Web.Mvc4. ...

  3. 业务接口+UI层的设计(基于Castle实现的Repository)

    业务接口+UI层的设计(基于Castle实现的Repository) Repository层设计的文章见:[http://www.cnblogs.com/yomho/p/3297042.html]   ...

  4. 【Yom框架】漫谈个人框架的设计之三:业务接口+UI层的设计(基于Castle实现的Repository)

    Repository层设计的文章见:[http://www.cnblogs.com/yomho/p/3297042.html]   一.概要设计 上面Reposity 应该为 Repository 特 ...

  5. Spring的Service层与Dao层解析

    本文转载于网络,觉得写得很透彻. dao完成连接数据库修改删除添加等的实现细节,例如sql语句是怎么写的,怎么把对象放入数据库的.service层是面向功能的,一个个功能模块比如说银行登记并完成一次存 ...

  6. Attribute自定义特性+Asp.net MVC中的filter详解

    转载自:http://blog.csdn.net/wangyy130/article/details/44241957 一.filter简介 在了解自定义特性前,先引入一个概念filter,它是MVC ...

  7. 分层 DAO层,Service层,Controller层、View层

    前部分摘录自:http://blog.csdn.net/zdwzzu2006/article/details/6053006 DAO层:DAO层主要是做数据持久层的工作,负责与数据库进行联络的一些任务 ...

  8. Service层和DTO层的作用

    Service层主要提供的几个作用:1.将业务逻辑层进行封装,对外提供业务服务调用.2.通过外观模式,屏蔽业务逻辑内部方法.3.降低业务逻辑层与UI层的依赖,业务逻辑接口或实现的变化不会影像UI层.4 ...

  9. Spring MVC中,事务是否可以加在Controller层

    一般而言,事务都是加在Service层的,但是爱钻牛角尖的我时常想:事务加在Controller层可不可以.我一直试图证明事务不止可以加在Service层,还可以加在Controller层,但是没有找 ...

随机推荐

  1. 跟随我在oracle学习php(11)

    数组专题 数组遍历: 1,普通for循环,经常用的数组遍历 var arr = [1,2,0,3,9]; for ( var i = 0; i <arr.length; i++){ consol ...

  2. C# WPF上位机实现和下位机TCP通讯

    下位机使用北京大华程控电源DH1766-1,上位机使用WPF.实现了电压电流实时采集,曲线显示.上午在公司调试成功,手头没有程控电源,使用TCP服务端模拟.昨天写的TCP服务端正好排上用场. 界面如下 ...

  3. [Leetcode 39]组合数的和Combination Sum

    [题目] Given a set of candidate numbers (candidates) (without duplicates) and a target number (target) ...

  4. 使用该方法在ubuntu下安装flashplayer的rpm包

    Ubuntu的软件包格式是deb,如果要安装rpm的包,则要先用alien把rpm转换成deb. sudo apt-get install alien #alien默认没有安装,所以首先要安装它 su ...

  5. shell练习题1

    需求如下: 写一个shell脚本,把10.0.1.0/24网段在线的ip列出来. 参考解答如下 方法1 #!/bin/bash ip="10.0.1." for i in $(se ...

  6. Oracle入门之表结构的管理

    建表的基本语法: create table table_name( field1 datatype, field1 datatype, field1 datatype, ... ) 注:table_n ...

  7. ionic2中使用datetime组件如何默认设置当前时间?

    HTML: <ion-item> <span item-left style="min-height: 27px;">存款日期/时间</span> ...

  8. spring-data-mongodb 使用原生aggregate语句

    除了特殊注释外,本文的测试结果均基于 spring-data-mongodb:1.10.6.RELEASE(spring-boot-starter:1.5.6.RELEASE),MongoDB 3.0 ...

  9. Maven中遇到Unsupported major.minor version 51.0错误

    将错误复制到某度上,查询出结果显示JDK版本不匹配. 我按着步骤执行结束后还是有以下错误: 配置: Tomcat: 最终解决: 我在Initialize的时候使用的版本是JDK1.8的,导致的这个错误 ...

  10. linux 增加虚拟内存swap(使用文件)

    1.简介 如果你的服务器的总是报告内存不足,并且时常因为内存不足而引发服务被强制kill的话,在不增加物理内存的情况下,启用swap交换区作为虚拟内存是一个不错的选择. 为了测试一些功能我在阿里云购买 ...