草庐IT

log4view

全部标签

c# - log4net 何时将日志写入或提交到文件?

我们使用log4net来记录winform应用程序的事件和错误。我们的客户希望在应用程序运行期间检查日志文件。但我无法找出log4net何时以及如何进行写入(提交)操作。以及如何满足客户的要求,除了自己创建另一个记录器。有什么帮助吗?谢谢。 最佳答案 如果您使用的是FileAppender,这个appender继承了TextWriterAppender,这又暴露了ImmediateFlush属性(property)。默认情况下,此属性的值为true,并强制appender为每个Append操作在基础流上执行Flush()。根据您对客

c# - 测试 ASP.NET MVC View 模型

我正在使用Nunit和Moq来测试我的asp.netmvc解决方案。这是测试传递给View的模型是否是正确对象/集合的好方法吗?[Test]publicvoidStart_Page_Should_Display_Posts(){varposts=newList{newPost{Id=1},newPost{Id=2}};varmock=newMock();mock.Setup(x=>x.FindAll()).Returns(posts.AsQueryable());varcontroller=newPostsController(mock.Object);varresult=contro

c# - Nancy Self Host 使用 Razor View 的空白响应

这个问题不太可能帮助任何future的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visitthehelpcenter.关闭11年前。在Nancy0.6中解决我正在尝试让自托管的Nancy返回RazorView,但我无法让它工作。Nancy源代码中的示例使用Web项目,但pagetheyhave没有说这是必需的。我已经尝试指定配置部分,但他们再次说“这一步是完全可选的”(斜体是他们的)。通过源代码追踪,razor似乎不是一个有效的View引擎,但我看不到我可以在配置中或我自己的Nanc

C# MVC : Performance and Advantages of MVC Html Helpers vs. View 中的直接 HTML

我想知道Html助手对C#ASP.NETMVCView有什么样的性能影响,尤其是在设置属性参数时,以及它们总体上有什么样的优势(为什么要使用它们?)使用Html助手:直接HTML:"/>我有很多页面包含5到15个这样的输入。最重要的是,HtmlHelpers允许您呈现表单(想想Html.BeginForm())等,因此您最终可能会调用20次甚至更多的HtmlHelper。我认为他们中的一些人也使用反射,例如当您设置类似上面禁用的属性时。这样做不会对性能产生巨大影响吗?为什么使用这些助手被认为是更好的做法?请有人给我一个充分的理由:)我想使用它们,但我真的很担心它们对性能的影响。使用Ht

c# - 从字符串创建强类型 log4net 级别

我注意到了log4net有一个强类型Levelclass.有谁知道是否有办法通过解析日志级别字符串来创建Level对象?例如:我想将错误级别字符串“ERROR”解析为等效的log4net.Core.Level.Error对象,对于其他日志记录级别也是如此。我编写了自己的(天真的)方法来执行此操作(见下文),但我希望log4net内部有一些东西可以为我执行此操作。谢谢!publicstaticLevelParseLevel(stringlevel){switch(level.ToUpperInvariant()){case"ALERT":returnlog4net.Core.Level.

c# - VIEWS 和 Fluent NHibernate?

可以使用FluentNHibernate映射VIEW吗?如果是,怎么办? 最佳答案 我认为您可以使用WithTable方法将表名替换为View名:WithTable("myview");编辑:为了更新这个答案,FluentNHibernate现在使用:Table("myview"); 关于c#-VIEWS和FluentNHibernate?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

c# - 在 log4Net 中关闭记录器实例的正确方法

我有一个类,我为其每个实例创建了一个新的记录器,并为其附加了一个缓冲区附加程序和一个动态附加程序。一切都在运行时完成,没有从配置文件中提取任何信息。现在要在类的自定义处置方法中释放资源,我需要关闭该特定记录器并释放其所有附加资源以避免任何内存泄漏。目前我一直在做的是至少刷新文件附加程序并写入所有日志信息,但既不会释放对该特定日志文件的锁定,也不会释放其任何资源。关闭记录器而不关闭其他正在处理的事件记录器的正确方法是什么log4net.ILoglog=log4net.LogManager.GetLogger(loggerName);foreach(IAppenderiappinlog.L

c# - 为asp.net MVC3项目配置log4net

好的,所以我了解了如何在我的应用程序中配置log4Net,但是现在首先如果应用程序是发布版或调试版,我想通过区分日志级别来改进配置,我该怎么做?第二,如果我的项目中有一个名为LOG的文件夹,我该如何设置配置,而不是使用我的应用程序的物理文件夹?例如代替:用过或 最佳答案 文档很简单:file:thefullorrelativepathtothelogfile.因此,您只需要完整路径,如C:\physicalpath\LOG\Log.log或相对路径,这需要以dotchar.开头,如.\App_Data\Log4Net.Logs也可以

c# - Visual Studio 转到定义 (F12) 打开对象浏览器而不是代码 View

我正在运行VS2005,当我右键单击一个对象并选择“转到定义”时,它会将我带到对象浏览器而不是实际代码。我可以更改一些设置来解决这个问题吗?注意:它适用于C#解决方案,我在使用Basic时遇到了问题。 最佳答案 当我将对库的引用添加为“二进制”引用而不是“项目”引用时,我通常会看到这种情况。您可能需要删除引用并将其从项目选项卡中添加回来。 关于c#-VisualStudio转到定义(F12)打开对象浏览器而不是代码View,我们在StackOverflow上找到一个类似的问题:

c# - 配置节 'log4net' 缺少节声明

我正在努力将log4net添加到我的MVC5项目中。我做了以下事情;Install-Packagelog4net已成功安装(我假设)log4net我在配置部分的web.config中添加了以下内容;并且我在web.config的configSections中添加了以下内容;我已将以下内容添加到我的Global.asax.cs;log4net.Config.XmlConfigurator.Configure();解决方案可以编译,但是当我尝试运行我的程序时出现错误;HTTPError500.19-InternalServerErrorTherequestedpagecannotbeacc