问题标签 [enterprise-library-5]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
silverlight - 将 Silverlight RootVisual 与 Enterprise Library 5 一起使用时出错
它的标题是 Activation issue like this question Activation error occurred while trying to get instance of type LogWriter
然而,我的工作在 90% 的时间里都能正常工作。这是在进行某些类型的 ajax 调用时。就像某些东西被缓存而不被清除一样。
违规行是
我确实切换到使用 Unity 容器,但我最终得到了一个关于容器而不是激活的不同错误。似乎应该有一种方法可以清除发生的任何 DOM 或缓存,以便仅针对 silverlight 甚至在 WPF 中都没有的“this.RootVisual”可以准备使用 Current 的服务定位器或容器.
c# - 如何使用 EnterpriseLibrary.Logging 登录 UTF-8
我对有关 EnterpriseLibrary.Logging 的搜索感到困惑。我有一个像这样设置的侦听器和格式化程序:
...
我在多个项目中使用它,它工作正常。
除了一件事,我希望 EnterpriseLibrary 使用 UTF-8 编码创建我的日志文件(我默认获取 ANSI 文件),但不幸的是我不知道如何做到这一点。
我希望能够登录到我的文件的字符串中有特殊字符(例如变音符号);当我将文件转换为 UTF-8 并让它进一步使用时,我看到日志记录工作正常,但我真的希望以这种方式创建它。
这可以在 xml 配置或其他地方完成吗?
提前感谢您的帮助!
c# - 需要 CustomStringLengthValidator -(模式和实践 – 企业库)
我正在使用 Microsoft Enterprise Library 5.0 验证应用程序块。
我想覆盖StringLengthValidator
只有一个小的变化。
当前StringLengthValidator
很好,但问题是这个验证器正在做两项工作。NotNull
检查和字符串长度检查。如果字符串是,null
那么即使我忽略了下限检查,验证器也会触发消息。
我想要的是如果我提供一个null
值,当我忽略下限检查时验证器不应该触发,只有它应该考虑上限。
提前致谢
c# - 使用 Microsoft.EnterpriseLibrary5.0 时出错
我想使用 EnterpriseLibrary 5.0 dll 登录我的项目。为此,我已将这些 dll 添加到我的参考资料中:
然后我写这个:
然后我写道:
但是当我的代码执行时,我在最后一行得到了这个异常:
尝试获取 LogWriter 类型的实例时发生激活错误,键“”
有这个 InnerException:
依赖项解析失败,type = \"Microsoft.Practices.EnterpriseLibrary.Logging.LogWriter\", name = \"(none)\"。\r\n发生异常时:调用构造函数 Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners .FlatFileTraceListener(System.String fileName, System.String header, System.String footer, Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.ILogFormatter 格式化程序)。\r\n异常是: IOException - 设备未准备好。\r\n \r\n---------------------------------------------- -\r\n发生异常时,容器为:\r\n\r\n 正在解决 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterImpl,LogWriter。默认 (映射自 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriter,(无))\r\n 解析构造函数 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterImpl(Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterStructureHolder structureHolder) 的参数“structureHolder” , Microsoft.Practices.EnterpriseLibrary.Logging.Instrumentation.ILoggingInstrumentationProvider instrumentationProvider, Microsoft.Practices.EnterpriseLibrary.Logging.ILoggingUpdateCoordinator updateCoordinator)\r\n 正在解决 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterStructureHolder,LogWriterStructureHolder。默认 (从 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterStructureHolder 映射,(无))\r\n 解析构造函数 Microsoft.Practices.EnterpriseLibrary.Logging.LogWriterStructureHolder 的参数 \"traceSources\"(System.Collections.Generic.IEnumerable
1[[Microsoft.Practices.EnterpriseLibrary.Logging.Filters.ILogFilter, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]] filters, System.Collections.Generic.IEnumerable
1[[ System.String,mscorlib,版本=4.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089]] traceSourceNames,System.Collections.Generic.IEnumerable1[[Microsoft.Practices.EnterpriseLibrary.Logging.LogSource, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]] traceSources, Microsoft.Practices.EnterpriseLibrary.Logging.LogSource allEventsTraceSource, Microsoft.Practices.EnterpriseLibrary.Logging.LogSource notProcessedTraceSource, Microsoft.Practices.EnterpriseLibrary.Logging.LogSource errorsTraceSource, System.String defaultCategory, System.Boolean tracingEnabled, System.Boolean logWarningsWhenNoCategoriesMatch, System.Boolean revertImpersonation)\r\n Resolving Microsoft.Practices.EnterpriseLibrary.Logging.LogSource,Trace\r\n
1[[System.Diagnostics.TraceListener, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]] traceListeners, System.Diagnostics.SourceLevels 级别, System.Boolean autoFlush, Microsoft.Practices.EnterpriseLibrary.Logging.Instrumentation。 ILoggingInstrumentationProvider instrumentationProvider)\r\n 正在解析 Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.ReconfigurableTraceListenerWrapper、Flat FileTrace 侦听器(映射自 System.Diagnostics.TraceListener、Flat FileTrace 侦听器)\r\n 解析构造函数 Microsoft 的参数“wrappedTraceListener” .Practices.EnterpriseLibrary.Logging.TraceListeners.ReconfigurableTraceListenerWrapper(System.Diagnostics.TraceListener WrappedTraceListener,Microsoft.Practices.EnterpriseLibrary.Logging。ILoggingUpdateCoordinator 协调器)\r\n 正在解决 Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener、Flat FileTrace 侦听器实现(映射自 System.Diagnostics.TraceListener、Flat FileTrace 侦听器实现)\r\n 调用构造函数 Microsoft.Practices.EnterpriseLibrary.Logging。 TraceListeners.FlatFileTraceListener(System.String 文件名,System.String 标头,System.String 页脚,Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.ILogFormatter 格式化程序)EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener(System.String 文件名,System.String 标头,System.String 页脚,Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.ILogFormatter 格式化程序)EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener(System.String 文件名,System.String 标头,System.String 页脚,Microsoft.Practices.EnterpriseLibrary.Logging.Formatters.ILogFormatter 格式化程序)
Resolving parameter \"traceListeners\" of constructor Microsoft.Practices.EnterpriseLibrary.Logging.LogSource(System.String name, System.Collections.Generic.IEnumerable
它有这个 InnerException:
设备未准备好。
我该如何解决这个错误?
c# - 获取当前日志文件的文件名 Enterprise Library 5.0
在 MS Enterprise Library 5.0 中,Logging 应用程序块,在运行时,我可以获取日志要去的日志文件(平面文件侦听器)的名称吗?
azure - 企业库日志记录块未在 Web-Api MVC 4 Azure Web 角色中记录事件
我在 Azure 环境中的 Web Api Web 角色中的应用程序日志中记录事件有一些问题。
在本地机器上调试时,我可以在我的事件日志中记录所有事件,但是一旦在 Azure 环境中托管相同的应用程序,就不会记录任何事件,也不会出现错误。我在 Worker 角色项目中使用了相同的配置和代码,它工作正常,没有任何问题。
我需要为 Web Api MVC 应用程序做任何指定的配置吗?我在提升模式下运行我的 Web 角色,并且还通过“regedit”提供了对事件源的权限,但应用程序日志中仍然没有写入任何事件。
logging - 企业图书馆日志记录 - 发送带有换行符的电子邮件
我使用 Enterprise Library Logging 来记录错误并发送一些通知。我已经配置了电子邮件侦听器。我需要在用户会话结束时发送一些警告列表。
但是在电子邮件中,我没有换行符分隔的消息。我有这样的事情:
错误 1 错误 2 错误 3
是否可以在 Enterprise Library Logging 中发送断行消息?
.net - 为服务堆栈使用 Microsoft Enterprise Library 5.0 日志记录提供程序
我有一个基于 ServiceStack 框架的项目,我想使用 Microsoft Enterprise Library 5.0 的日志记录提供程序,以下是我遵循的步骤:
(1)为MS Enterprise Library 5.0安装了Service Logging提供程序:Install-Package ServiceStack.Logging.EnterpriseLibrary5
(2)在项目中创建了一个文件EntLib.Config,内容为https://github.com/ServiceStack/ServiceStack.Logging/blob/master/tests/ServiceStack.Logging.Tests/entlib5.test.config
(3)在服务app主机配置LogFactory使用EntLib5Factroy:
启动应用程序后,我可以看到错误:
“/”应用程序中的服务器错误。
不支持 DebugFormat 方法。使用 loggingConfiguration 部分中的格式化程序修改日志消息格式。说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.NotSupportedException:不支持 DebugFormat 方法。使用 loggingConfiguration 部分中的格式化程序修改日志消息格式。
源错误:在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。
堆栈跟踪:
[NotSupportedException:不支持 DebugFormat 方法。使用 loggingConfiguration 部分中的格式化程序修改日志消息格式。] ServiceStack.Logging.EntLib5.EntLib5Logger.DebugFormat(String format, Object[] args) +96 ServiceStack.WebHost.Endpoints.Support.HttpHandlerBase.ProcessRequest(HttpContext context) + 322 System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +100 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
c# - Microsoft 企业库 - 缓存机制到期
早上好
我正在尝试将缓存机制集成到我当前的项目中,并想询问我的最佳实践和问题。
我的 web.config 定义如下:
当我向缓存中添加内容时,我使用以下代码:
从文档中,我可以看到通过该方法放入缓存的项目Add(string key, object value)
不会过期。但是,我可以看到该方法Add(string key, object value, CacheItemPriority scavengingPriority, ICacheItemRefreshAction refreshAction, params ICacheItemExpiration[] expirations)
定义了一个时间跨度,该时间跨度指定缓存何时到期
expirationPollFrequencyInSeconds
我的问题是,当使用第二个 Add 方法在缓存中添加项目时需要再次定义时间跨度时,为什么要在 web.config 中定义属性?我错过了什么吗?谢谢
enterprise-library - EntrepriseLibrary 版本项目
有没有办法添加一个项目的预/后编译配置,包括 EntrepriseLibrary,他总是需要搜索的 Entreprise 版本。
我尝试在我的网站的 web.config 中。
但不工作。可能是因为它是一个 shell 项目,也可能是因为我使用 CompositeWeb(V2)。
也许他搜索了错误的 EnterpriseLibrary(硬编码版本)
所以我问是否有办法配置我的 shell 项目以强制使用 EnterpriseLibrary 5?或者也许你有另一种方法来纠正我的迁移问题。
我在 MVP .net2 VS2005 中有一个旧网站。他们要求我保留它,但在 VS2008 .net3.5 上转移。所以我改变了一些图书馆。安装 EnterpriseLibrary 5. 使用旧的 EnterpriseLibrary 版本更改我的解决方案中的每个引用。现在我遇到了一个问题。
我的一个项目,用于注入,需要 Microsoft.Practices.CompositeWeb 和 Microsoft.Practices.CompositeWeb.EnterpriseLibrary。旧网站使用 1.1 版本。但是这个版本似乎要求使用 EnterpriseLibrary 3.1。我需要改变它。我找不到使用 EnterpriseLibrary 5 的复合Web 版本(也许其他人可以?)。因此,为了纠正我的错误,一些线程谈论使用 web.config 更改 EnterpriseLibrary 的版本。我尝试但没有好的结果。所以我有了想法,为什么不使用预构建配置来配置compositeWeb以使用EnterpriseLibrary的更正版本。