草庐IT

Creating-and-configuring-log-stre

全部标签

c# - 如何使用 Log4Net 在日志文件中获取当前用户名而不是 AppPool 标识

我们在ASP.NETMVC3应用程序中使用Log4Net,一切正常,但我们希望在日志文件中看到当前用户名而不是应用程序池的标识,这是我们正在使用的附加程序配置:true所以看起来属性:%username正在检索值:WindowsIdentity.GetCurrent().Name而不是我们需要的:HttpContext.Current.User关于我们如何在不创建自定义属性或额外的log4net派生类的情况下在web.config中轻松解决此问题的任何想法?如果可能的话,否则如果自定义属性是我们可以忍受的唯一方式,我想:)谢谢! 最佳答案

c# - MVC 4 : How to maintain sessions and cookies to be still valid after IIS restart?

似乎我的登录session(使用简单成员资格)和cookie(验证token)在IIS服务器重新启动后无效。这对我来说是个问题,如果用户在交易中间然后服务器重新启动,用户必须重新填写表格并重新填写,当交易在中间中断时也可能是一些代码问题过程。如何让它们在服务器重启后仍然有效?这是我的web.config:.........更新我尝试使用SQLServer来存储session状态。然后出现新问题,我不能使用ViewBag,因为它不是Serializable。还有其他方法可以实现吗? 最佳答案 没有办法实现这个AFAIK。您始终可以使用

C# 代码简化查询 : The Null Container and the Foreach Loop

我经常有这样的代码:if(itm!=null){foreach(typexinitm.subItems()){//dostuff}}//domorestuff在省略//domorestuff的情况下,很容易避免额外的foreach循环。通过使用适当的命令退出作用域(根据发生的情况,这通常意味着return语句或continue语句)。这种类型的东西往往会导致箭头代码。我目前有几种方法来处理这个问题:使用itm=itm==null这样的代码?itm.subItems():空数组允许箭头代码使用goto使用邪恶的范围黑客(将整个事情,所有的if语句包装在一个范围内,然后突破它)。在我看来,

c# - "The binary operator Add is not defined for the types ' System.String ' and ' System.String '."-- 真的吗?

尝试运行以下代码时:Expression>stringExpression=Expression.Lambda>(Expression.Add(stringParam,Expression.Constant("A")),newList(){stringParam});stringAB=stringExpression.Compile()("B");我收到标题中提到的错误:“二元运算符Add没有为类型‘System.String’和‘System.String’定义。”真的是这样吗?显然在C#中它有效。在C#中执行strings="A"+"B"是表达式编译器无法访问的特殊语法糖吗?

c# - 使用 C# 在 selenium 中哪里可以找到 chromedriver.log。我在哪里可以看到 chromedriver 的日志文件?

使用C#在selenium中哪里可以找到chromedriver.log。在哪里可以看到chromedriver的日志文件?ChromeOptionsoptn=newChromeOptions();optn.AddArgument("--verbose");optn.AddArgument("--log-path=D:\\chromedriver.log");vardriver=newChromeDriver(@"D:\Driver\",optn);driver.Navigate().GoToUrl("https://www.google.co.in/?gfe_rd=cr&ei=aWh

c# - 如何为 WCF 配置 log4net

在我的aspwebforms应用程序上,我会进行log4net初始化;log4net.Config.XmlConfigurator.Configure();在Application_Start上的global.asax上,以便在应用程序启动时完成一次。为IIS托管的WCF应用程序配置log4net的正确方法是什么(具体询问将此行放在哪里使用哪个事件等)以便log4net初始化一次并且没有不必要的初始化。 最佳答案 我通常在服务类的构造函数中执行此操作,但我会检查是否已配置log4net:if(!LogManager.GetRepos

c# - 使用 Windows Azure DiagnosticsMonitor 时,log4net traceappender 仅记录级别为 'verbose' 的消息

我有一个azureworker角色,我已将其配置为使用写入WindowsAzure.Diagnostics的log4netTraceAppender。这是通过在worker角色的RoleEntryPoint中进行以下调用来完成的。usingSystem;usingMicrosoft.WindowsAzure.Diagnostics;usinglog4net.Config;namespaceXXX{publicclassWorkerRole:RoleEntryPoint{publicoverrideboolOnStart(){varconfig=DiagnosticMonitor.Get

c# - 添加 log4net 配置时出现异常

我在App.cs文件(创建只读变量)的第一行代码中遇到错误。我得到的错误是:Afirstchanceexceptionoftype'System.TypeInitializationException'occurredinPresentationFramework.dllAnunhandledexceptionoftype'System.TypeInitializationException'occurredinPresentationFramework.dllAdditionalinformation:Thetypeinitializerfor'System.Windows.Appl

c# - Log4Net 从多个进程写入文件

是否可以将5个不同的进程写入同一个日志文件?我正在使用Log4Net进行日志记录,但似乎只有1个进程正在写入文件,当我关闭此进程时,第二个进程正在写入。我要大家一起写。怎么做? 最佳答案 如果您想从多个进程写入单个文件,请添加MinimalLock作为LockinModel给你的节点:............请注意这会对性能产生一些影响。 关于c#-Log4Net从多个进程写入文件,我们在StackOverflow上找到一个类似的问题: https://sta

c# - 乐观并发 : IsConcurrencyToken and RowVersion

我正在创建将在我的应用程序中使用的默认并发策略。我决定采用乐观策略。我的所有实体都映射为TableperType(TPT)(使用继承)。我很快了解到,在EntityFramework上使用带有继承的RowVersion类型的列时会出现问题:ProductIdINTIDENTITYPRIMARYKEYRowVersionROWVERSIONCar(inheritsProductrecords)ColorTYNIINTNOTNULL,AnotherProperty....   如果我更新Car表的记录,Product表中的RowVersion列将不会更新。我计划在Product中使用类型为