ASP.NET MVC中使用log4net的实现示例_实用技巧

来源:脚本之家  责任编辑:小易  

要用EF调用存储过程,必须将这个存储过程拖拽到EF对应的文件中来,这样这个存储过程就自动变成了一个函数。例如存储p_GetProduct。那么使用的时候using(DataContext oDataContext=new DataContext())/EF对应的上下文对象{oDataContext.p_GetProduct();直接通过这样调用就行了。当然,如果存储过程有参数,也可以通过这个函数传递参数。}希望可以帮到你www.zgxue.com防采集请勿采集本网。

今天自己要弄一个日志记录功能,以前也弄过 但是都忘了,今天又弄了一下 花了几十分钟,在此记录一下

Controller代码如下:public class HomeController:Controller { public ActionResult Index(){ return View();}[HttpPost]public ActionResult Index(IndexModel model){ return View(model);} }

第一步:添加log4net.dll

可以对应多model,需要多件一个累,你现在有两个个model,DeviceInfoModel和UploadImageModel,你一个view需要都返回他们,你多建一个类就好。如: Public class model2 { Public List

第二步:配置  示例如下: 我是直接配置在了Web.config下

return Content(\"<script>alert(11);location.href='Areas/Admin/Home/Index';去掉Areas前面的“/”试试。这个问题肯定是路径问题,你要确定当前页面与Areas/Admin/Home/Index页面的文件夹

<?xml version="1.0" encoding="utf-8"?><configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" /> </configSections> <log4net> <logger name="Student"> <level value="ALL" /> <appender-ref ref="rollingFile" /> </logger> <appender name="rollingFile" type="log4net.Appender.RollingFileAppender,log4net"> <File value="log/" /> <DatePattern value="yyyy-MM-dd".txt"" /> <StaticLogFileName value="false" /> <maxSizeRollBackups value="-1" /> <RollingStyle value="Date" /> <AppendToFile value="false" /> <MaximumFileSize value="1024MB" /> <layout type="log4net.Layout.PatternLayout,log4net"> <ConversionPattern value="%-38m %-7p %-20d %n" /> </layout> </appender> </log4net> <!--下面的不是!!!--> <appSettings> <add key="webpages:Version" value="3.0.0.0" /> <add key="webpages:Enabled" value="false" /> <add key="ClientValidationEnabled" value="true" /> <add key="UnobtrusiveJavaScriptEnabled" value="true" /> </appSettings> <system.web> <compilation debug="true" targetFramework="4.7.2" /> <httpRuntime targetFramework="4.7.2" /> </system.web> </configuration>

MVC纵向切割了开发过程中的代码,从服务器到浏览器层层分离,层次之间耦合度很低,因为它是顺着底层的开发脉络进行封装,所以有利于开发者对整个程序过程流转的理解。但是MVC有一个非常大的缺点

第三步:在Global.asax.cs文件下添加     log4net.Config.XmlConfigurator.Configure(); 如下:

MVC应尽量减少使用服务器控件 不是少用 是永远都不要用 mvc彻底抛弃了控件 抛弃了双击的那个事件委托 也抛弃了ispackxx这个回发 也就没有viewstate(手写单词有的有错)

public class MvcApplication : System.Web.HttpApplication { protected void Application_Start() { AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); log4net.Config.XmlConfigurator.Configure(); } }

第四步:添加Log帮助类 然后使用即可  这里需要注意的是名字对应 看我的下面代码中的注释

public class LogHelper { //Student是你的配置文件 <logger name="Student"> 的name的值 private static log4net.ILog log = log4net.LogManager.GetLogger("Student"); public static void Debug(object message, Exception e) { log.Debug(message, e); } public static void Debug(object message) { log.Debug(message); } public static void Info(object message) { log.Info(message); } public static void Warn(object message) { log.Warn(message); } public static void Error(object message) { log.Error(message); } public static void Error(object message, Exception e) { log.Error(message, e); } public static void Log(object message) { log.Info(message); } }

配置文件的内容比较简略 详细的自己百度看看其他比较详细的即可

ActionResult 是一个抽象(abstract)类,ViewResult 只是ActionResult 的一个实现(implementation)。如果你确认你返回的是一个视图(view),你可以直接返回类型为ViewResult。ActionResult 有很多的派生类,如果你很确定你要返回的类型,你可以明确的返回该类型。如果你并不是很清楚,或者你根本不想去理解这些东西,你可以直接返回这些派生类的基类:ActionResult内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • asp.net log4net的使用方法
  • 充分利用asp.net的三种缓存提高站点性能的注意方法
  • .net decimal保留指定的小数位数(不四舍五入)
  • 删除datatable重复列,只删除其中的一列重复行的解决方法
  • asp.net下一个账号不允许多个用户同时在线,重复登陆的代码
  • asp.net(c#) 开源资源大汇总
  • .net core 2.0迁移小技巧之web.config 配置文件示例详解
  • asp.net中资源文件的使用
  • asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页
  • .net集合排序的一种高级玩法实例教程
  • 详解c# .net core 下的网络请求
  • ASP.NET MVC 中 ActionResult 和 ViewResult 在使用上的区别是什么?要注意什么吗?
  • 在ASP.NET MVC中如何使用EF调用存储过程
  • ASP.NET MVC中这个URL该怎么设置路由
  • 使用ASP.NET MVC的快速开发平台有什么优势?
  • asp.net MVC中,某个页面中的Model是怎么指定的?
  • asp.net mvc 中 一个view如何对应多个model呢
  • asp.net mvc中让页面跳转到分区项目的页面中,如下代码,怎么不行?
  • ASP.NET MVC与WebForm的区别
  • 在ASP.NET MVC中服务器控件的事件是不是不能使用?
  • asp.net mvc中session的使用
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全基础应用实用技巧自学过程首页asp.net实用技巧asp.net log4net的使用方法充分利用asp.net的三种缓存提高站点性能的注意方法.net decimal保留指定的小数位数(不四舍五入)删除datatable重复列,只删除其中的一列重复行的解决方法asp.net下一个账号不允许多个用户同时在线,重复登陆的代码asp.net(c#) 开源资源大汇总.net core 2.0迁移小技巧之web.config 配置文件示例详解asp.net中资源文件的使用asp.net gridview分页:第一页 下一页 1 2 3 4 上一页 最末页.net集合排序的一种高级玩法实例教程详解c# .net core 下的网络请求java正则表达式 pattern和matche未将对象引用设置到对象的实例 (asp.net(c#)网页跳转七种方法小结未能加载文件或程序集“xxx”或它asp.net“服务器应用程序不可用”asp.net中的几种弹出框提示基本实asp.net gridview 72般绝技asp.net生成excel并导出下载五种asp.net汉字转拼音和获取汉字首字asp.net对路径"xxxxx"aspx与ascx,ashx的用法总结asp.net上传图片验证代码的小例子dataview.rowfilter的使用(包括in,like等基于asp.net+easyui框架实现图片上传功能asp.net 相关文章实现方法asp.net listbox实现单选全选取消asp.net core mvc中怎么把二级域名绑定到.net微信公众号开发之公众号消息处理js 父页中的单选按钮取值asp.net web.config中 数据库连接字符串加
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved