1

典型场景,我在我的开发机器上使用 EntLib 5.0-April 2010 登录,一切都像魅力一样,当我尝试在我们的 Web 服务器上投入生产时,它不起作用。

开发机器是Windows 7,使用VS2008。生产服务器是带有 Microsoft .NET Framework 3.5 和 Service Pack 1 的 Windows Server 2003 R2。

我将 LAB DLL 包括在项目中(Common、Logging、ServiceLocation),而不是 GAC。

有任何想法吗?

提前致谢

4

2 回答 2

1

事实证明,由于我以管理员身份从 VS 运行 Web 应用程序,因此为我创建了 LogSource。在生产中,应用程序以正常权限运行,并且需要由管理员创建 LogSource。查看以下内容:

http://entlib.codeplex.com/wikipage?title=Why%20are%20messages%20not%20logged?&referringTitle=EntLib%20FAQ

于 2010-07-16T18:38:58.663 回答
0

创建一个控制台应用程序并编写以下行:

 class Program
    {
        static void Main(string[] args)
        {
            System.Diagnostics.EventLog.CreateEventSource("Enterprise Library Logging", "Application");
            System.Diagnostics.EventLog.WriteEntry("Application", "Sample error", System.Diagnostics.EventLogEntryType.Error);
        }
    }

将exe文件复制到服务器,并以管理员身份运行。然后,在事件查看器中,您将看到消息“示例错误”以确保行已执行。

它会解决你的问题。

于 2015-01-09T20:53:31.117 回答