草庐IT

log4j-defaults

全部标签

c# - 将 ILMerge 与 log4net 一起使用会导致 "inaccessible due to protection level"错误

我为我的log4net日志记录对象的初始化创建了一个包装类,以便更容易地在ThreadContext中建立自定义属性。这发生在我与许多其他有用函数一起建立的类库中。为了加入所有不同的库,我还使用“/internalize”开关向ILMerge添加了一个AfterBuild目标。ILMerge所针对的库内对此初始化方法的所有引用似乎都工作正常。但是,当我在其他地方引用这个合并库时。我的实现会引发保护级别错误。我已尝试向可选的排除(/internalize:excludes.txt)文件中添加各种内容,但这似乎不起作用。excludes.txt示例:log4net.Configlog4ne

c# - MemoryCache.Default 在 .NET Core 中不可用?

我正在将一些代码从.NET4.6移植到.NETCore,但在使用MemoryCache时遇到了一些问题。4.6代码使用MemoryCache.Default来实例化缓存,但这在.NETCore中似乎不可用。在.NETCore中是否有与此等效的东西,或者我应该将自己的MemoryCache更新为单例并通过IOC注入(inject)它? 最佳答案 System.Runtime.Caching.MemoryCache和Microsoft.Extensions.Caching.Memory.MemoryCache是完全不同的实现。它们很相似

c# - BindingFlags.Default 等同于什么?

我记得在某处读过,当使用反射和接受BindingFlags位掩码的GetMethod重载时,BindingFlags.Default是等效的到BindingFlags.Public|BindingFlags.静态|BindingFlags.Instance之类的。谁能告诉我BindingFlags.Default中具体包含哪些值?MSDNdocumentation不说,而且我在任何地方都找不到答案。 最佳答案 如果你“去定义”它,你会看到:publicenumBindingFlags{//Summary://Specifiesnob

c# - Visual Studio 中的 "Add existing item": is it possible to make "Add as link" default?

正如this中指出的那样因此,VisualStudio中的Add>Existingitem对话框默认显示Add按钮(意味着所选项目将被物理复制到新位置),而理想的操作通常(总是?)添加为链接。是否可以配置VisualStudio,以便在打开添加>现有项目对话框时默认选择添加为链接?我已经彻底搜索了VisualStudio中的Options对话框并检查了MSDN文档以找到对此的答案,但到目前为止无济于事。ProjectLinker当两个新项目要共享同一代码库时,自动链接是一个不错的选择。但是,当将大量文件从现有项目链接到新项目时,似乎仅限于Add>Existingitem方法,而且这项工

c# - c#中带有过滤器的log4net纯代码配置

我试图完全通过代码配置Log4Net,但是当我使用最小配置时,我被来自NHibernate和流畅界面的日志消息淹没了。所以,我要做的很简单。告诉Log4Net只显示我的单个类的日志消息。我玩弄了一下,但无法弄清楚...谁能帮忙,我想下面的代码说明了我的想法:varfilter=newlog4net.Filter.LoggerMatchFilter();filter.LoggerToMatch=typeof(DatabaseDirectory).ToString();filter.AcceptOnMatch=false;varx=newlog4net.Appender.ConsoleAp

c# - 在基类中定义的 log4net 记录器

我想像这样在我的MVCController抽象基类中构建我的log4net记录器:protectedstaticreadonlyILogLog=LogManager.GetLogger(typeof(AuthorizedController));以这种方式,我可以一次定义记录器并完成它。唯一的问题是日志输出中的记录器属性将始终是AuthorizedController,如果我有FooController继承自AuthorizedController我想日志输出以反射(reflect)这一点。执行此操作的KISS、DRY和有效方法是什么? 最佳答案

“export ‘default‘ (imported as ‘VueRouter‘) was not found in ‘vue-router‘报错分析

在项目运行时会报错“export‘default‘(importedas‘VueRouter‘)wasnotfoundin‘vue-router‘`主要是路由组件问题一、错误分析有以下两种原因:1.路由格式编写错误错误格式router:[{//应该是routes//路径的错误path:'/home',//组件名不是字符串格式component而不是componentscomponents:"home"},正确格式routes:[{//路径path:'/home',//组件名component:Home},2.对应版本不兼容这是因为安装的时候默认安装最新版本可能与其他插件不兼容,重新安装旧版本即

c# - MSTest - 如何为 UnitTest 项目初始化 log4net?

我有一个用于测试ASP.NETMVC项目的VisualStudio单元测试项目。将程序集级log4net.Config.XmlConfigurator属性添加到AssemblyInfo.cs不起作用,SO上的其他人发现他们必须直接调用log4net.Config.XmlConfigurator.Configure();问题是,单元测试如何做到这一点?在类方法上使用Microsoft.VisualStudio.TestTools.UnitTesting.AssemblyInitialize属性的答案不起作用。对我来说,这段代码会导致在输出窗口中记录一个InvalidOperationEx

c# - 更好的日期时间?或者对 NULL 使用 default(DateTime)?

我正在设计一个具有私有(private)消息传递系统的C#/NHibernate网站。我希望管理员检查用户是否以及何时阅读了一条消息,并一起突出显示用户尚未阅读的那些消息。为了实现这两个目标,我找到了两个选择:选项1classMessage{DateTime?Read;}其中Read==null表示还没有读过选项2classMessage{DateTimeRead;}其中Read==default(DateTime)(January1st1A.D.,0:00:00)表示尚未读取。在大学里,我被教导使用NULL值来处理所有特殊情况,并且还使用可空类型似乎不错的选择,因为通过检查它们是否为

c# - WCF 服务 : How to find server logs to understand error?

我知道这可能是一个非常基本的问题,但我对WCF和服务创建是全新的。我正在使用MicrosoftVS2010C#4运行本地托管WCF服务。我正在尝试通过简单绑定(bind)通过URL运行服务,并通过URL运行PUT和GET方法。我得到了:.有关详细信息,请参阅服务器日志。当我尝试发出服务请求时出错。我怎样才能找到这些服务器日志? 最佳答案 不一定要打开日志记录。需要在WCF配置(app.config或web.config)中启用跟踪和日志记录。您可以手动执行此操作,也可以通过单击app.config然后选择EditWCFConfigu