asp.net MVC2 初探十一
<sectionGroup name="spring">
<section name="context" type="Spring.Context.Support.WebContextHandler, Spring.Web"/>
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core"/>
</sectionGroup>
<section name="SpringOverrideProperty" type="System.Configuration.NameValueSectionHandler"/>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
</configSections>
<spring>
<context>
<resource uri="config://spring/objects"/>
<resource uri="assembly://SpringDao/SpringDao/spring_hibernate_dao.xml"/>
<resource uri="assembly://SpringDao/SpringDao/Controller.xml"></resource>
</context>
<objects xmlns="http://www.springframework.net"/>
</spring>
<add name="Spring" type="Spring.Context.Support.WebSupportModule, Spring.Web"/>
</httpModules>
<httpHandlers>
<add verb="*" path="*.aspx" type="Spring.Web.Support.PageHandlerFactory, Spring.Web"/>
</httpHandlers>
<objects xmlns="http://www.springframework.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
<object id="ssCode" type="Model.SS_CODE,Model">
<property name="C_DATA" value="2"></property>
</object>
<object id="CodeController" type="Controllers.CodeController,NormalUniversity" singleton="false" autowire="byName" >
<property name="ssCode" ref="ssCode"></property>
</object>
</objects>
<objects xmlns="http://www.springframework.net"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.net http://www.springframework.net/xsd/spring-objects.xsd">
<object id="DbProvider" type="SpringDao.SQLProvider, SpringDao">
<property name="ConnectionString" value="server=.\sql2k5;uid=sa;pwd=sa123;database=test;" />
</object>
<object id="SessionFactory" type="Spring.Data.NHibernate.LocalSessionFactoryObject, Spring.Data.NHibernate12">
<property name="DbProvider" ref="DbProvider" />
<property name="MappingAssemblies">
<list>
<value>Model</value>
</list>
</property>
<property name="HibernateProperties">
<dictionary>
<entry key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider" />
<entry key="hibernate.dialect" value="NHibernate.Dialect.MsSql2005Dialect" />
<entry key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver" />
<entry key="show_sql" value="true" />
</dictionary>
</property>
</object>
<object id="HibernateTransactionManager" type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate12">
<property name="DbProvider" ref="DbProvider" />
<property name="sessionFactory" ref="sessionFactory" />
</object>
<object id="TransactionInterceptor" type="Spring.Transaction.Interceptor.TransactionInterceptor, Spring.Data">
<property name="TransactionManager" ref="HibernateTransactionManager" />
<property name="TransactionAttributeSource">
<object type="Spring.Transaction.Interceptor.AttributesTransactionAttributeSource, Spring.Data" />
</property>
</object>
<object id="DaoHelper" type="Dao.SS_CodeDao,Dao">
<property name="sessionFactory" ref="sessionFactory" />
</object>
</objects>
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spring.Context;
using System.Web.Mvc;
using System.Web.Routing;
using System.Web;
namespace SpringDao
{
public class ControllerFactory : IControllerFactory
{
private static DefaultControllerFactory defalutf = null;
public IController CreateController(RequestContext requestContext, string controllerName)
{
string controller = controllerName + "Controller";
IApplicationContext ctx = Container.GetContext();
if (ctx.ContainsObject(controller))
{
object controllerf = ctx.GetObject(controller);
return (IController)controllerf;
}
else
{
if (defalutf == null)
{
defalutf = new DefaultControllerFactory();
}
return defalutf.CreateController(requestContext, controllerName);
}
}
public void ReleaseController(IController controller)
{
IApplicationContext ctx = Container.GetContext();
if (!ctx.ContainsObject(controller.GetType().Name))
{
if (defalutf == null)
{
defalutf = new DefaultControllerFactory();
}
defalutf.ReleaseController(controller);
}
}
}
}
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spring.Context;
using Spring.Context.Support;
using System.Collections;
namespace SpringDao
{
public class Container
{
/// <summary>
/// 获取应用程序上下文.
/// </summary>
/// <returns><see cref="IApplicationContext"/>应用程序上下文.</returns>
public static IApplicationContext GetContext()
{
if (FApplicationContext == null)
{
FApplicationContext = ContextRegistry.GetContext();
}
return FApplicationContext;
}
/// <summary>
/// 获取应用程序上下文.
/// </summary>
/// <param name="name"><see cref="IApplicationContext"/>应用程序上下文名称.</param>
/// <returns><see cref="IApplicationContext"/>应用程序上下文.</returns>
public static IApplicationContext GetContext(string name)
{
return ContextRegistry.GetContext(name);
}
/// <summary>
/// 获取对象.
/// </summary>
/// <typeparam name="T">对象的类型.</typeparam>
/// <param name="id">标识.</param>
/// <returns></returns>
public static T GetObject<T>(string id)
{
return (T)GetContext().GetObject(id);
}
/// <summary>
/// 获取对象类表.
/// </summary>
/// <typeparam name="T">对象的类型.</typeparam>
/// <returns></returns>
public static IList<T> GetObjects<T>()
{
IEnumerable items = GetContext().GetObjectsOfType(typeof(T));
IList<T> objects = new List<T>();
foreach (DictionaryEntry item in items)
{
objects.Add((T)item.Value);
}
return objects;
}
[ThreadStatic]
private static IApplicationContext FApplicationContext;
}
}
using System.Collections.Generic;
using System.Collections;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Model;
using NHibernate.Expression;
namespace Controllers
{
public class CodeController : BaseController<SS_CODE>
{
private SS_CODE ssCode { set; get; }
public ActionResult Index()
{
ssCode.C_DATA = "aaaa";
return base.Index1("~/Views/System/Code/Index.aspx");
}
}
}
<log4net>
<logger name="WebLogger">
<level Value="DEBUG"></level>
<appender-ref ref="LogFileAppender" />
<appender-ref ref="RollingLogFileAppender"></appender-ref>
</logger>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--日志文件名开头-->
<file value="App_Data\\Log.txt" />
<!--是否追加到文件-->
<appendToFile value="true" />
<!--混合使用日期和文件大小变换日志文件名-->
<rollingStyle value="Composite" />
<!--日期的格式-->
<datePattern value="yyyyMMdd" />
<!--最大变换数量-->
<maxSizeRollBackups value="10" />
<!--最大文件大小-->
<maximumFileSize value="1MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
</log4net>
{
if (lg.IsErrorEnabled)
{
lg.Error(this.GetType().ToString()+"xxxx李磊");
}
}
转载于:https://blog.51cto.com/leelei/326473
asp.net MVC2 初探十一相关推荐
- asp.net MVC2 初探四
今天教大家如何利用ADO.Net 或者linq实现数据增删改查,新建一个项目 using System; using System.Collections.Generic; using System. ...
- asp.net MVC2 初探十五
今天做个简单的登录页面,前些天用Nhibernate实体映射出了不少问题.老板有换ADO.NET ENTITY DATA MODEL 的冲动.先看看实体模型. 接着再看看控制器 using Syste ...
- Asp.net MVC2.0系列文章-运行Web MVC2.0 Demo
安装VS2010 首先安装VS2010,安装过程请参考文章: http://www.cnblogs.com/ywqu/archive/2010/01/27/1657450.html. 创建第一个MVC ...
- Asp.Net MVC2.0 Url 路由入门---实例篇
本篇主要讲述Routing组件的作用,以及举几个实例来学习Asp.Net MVC2.0 Url路由技术. 接着上一篇开始讲,我们在Global.asax中注册一条路由后,我们的请求是怎么转到相应的Vi ...
- ASP.NET MVC2+MSSQL+Godaddy
先感谢一下博客园,在网上浪了这么长时间,现在发现还是博客园的文章技术含量要高一点! 现在言归正传,最近在课外学习ASP.NET MVC,也在微软的官网上学了一些例子教程,现在刚好有机会可以实践一下,一 ...
- Asp.net MVC2.0系列文章-MVC简介篇
使用微软VS工具开发Web应用程序主要有两种方式:一种是常用的创建Asp.net Web Forms,另外一种就是今天着重介绍的Asp.net MVC. <?XML:NAMESPACE PRE ...
- Oxite移植到ASP.NET MVC2 BETA 笔记(关于Html.RenderPartialFromSkin)
在将Oxite移植到asp.net mvc2 beta平台后,经过一系列有关"方法调用"变更的修正后,终于能够通过编译运行起来了!(移植后的源码参见:http://ecubecms ...
- Asp.net MVC2.0系列文章-编辑和删除新闻操作
上一篇文章,我们简单地完成了新闻内容的展示功能(Asp.net MVC2.0系列文章-显示列表和详细页面操作),此篇文章,我们使用Asp.net MVC2.0实现新闻记录的编辑和删除功能. 创建Vie ...
- [ASP.NET MVC2 系列] ASP.NET MVC 之如何创建自定义路由约束
[ASP.NET MVC2 系列] [ASP.NET MVC2 系列] ASP.Net MVC教程之<在15分钟内用ASP.Net MVC创建一个电影数据库应用程序> ...
最新文章
- 呼伦湖国家级自然保护区管理局投放草料保野生黄羊过冬
- 朴素贝叶斯(NBM,Naive Bayesian Model)为什么朴素又有哪些形式?
- lodop打印不显示页码_打印成了最浪费时间的事?5个EXCEL打印技巧让你不在抗拒打印...
- iPhone8用的全面屏是什么屏幕?
- Tomcat7基于Redis的Session共享
- Netty自带的心跳机制——IdleStateHandler
- Maven超级详细安装教程ovo
- 小白ARM平台移植 USB 蓝牙、交叉编译 bluez-4.95
- iOS定位添加大头针
- GCTA学习8 | GCTA计算多性状遗传力和遗传相关
- Python实例29:利用python自动创建多个Excel表格
- 公司企业微信公众号怎么创建小程序?
- 踢爆IT劣书出版黑幕——由清华大学出版社之《C语言入门很简单》想到的(1)...
- 完美解决Win10“无法登陆到你的账户”问题,无法登录账户的全方面解决方案!
- Devart Excel Add-ins Crack
- 女程序员,靠脸还是靠技术?
- 【问题记录】centos7 nodejs better-SQLite3无法安装
- Skynet日志服务
- h5页面保存img_从微信H5点击保存图片说起
- 5位数的数字黑洞是多少_目前对于6174数字黑洞现象是否有合理的解释或证明?...
热门文章
- 机器学习基础:分类vs回归
- Tomcat7基于Redis的Session共享实战二
- [转载]MIT牛人解说数学体系
- [转载]最完整PHP.INI中文版
- linux shell脚本编程技巧介绍(一)
- Android Prefence 总结
- 坚持做一件事情真的很不容易,首先必须要克服惰性!
- [O365] Azure Active Directory Sync EVENT ID 906 FAILED While Purging Run History. Invalid Namespace
- springboot整合flink
- gensim出现segmentation Fault解决方案