Enterprise Library 6是否适用于Visual Studio 2013和/或2015?

pun*_*ter 14 enterprise-library visual-studio-2013 visual-studio-2015

它似乎没有,我们计划在未来的项目中使用它(Logging,Exception等..).它仍然受支持吗?我没有像过去那样看到围绕这个工具的很多活动.

我们已经有了新的遗物,所以也有助于知道新的遗物是否可以进行日志记录/异常处理..例如,我可以创建自定义日志或异常并在新的遗留仪表板中查看它们吗?

cil*_*ler 32

确实如此.您可以通过NugetEnterprise Library 6添加到项目中 这是示例应用程序.

using System;
using System.Diagnostics;
using Microsoft.Practices.EnterpriseLibrary.Logging;
using Microsoft.Practices.EnterpriseLibrary.Logging.Formatters;
using Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners;

namespace Practice.Logging
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            LoggingConfiguration loggingConfiguration = BuildProgrammaticConfig();
            var defaultWriter = new LogWriter(loggingConfiguration);

            // Check if logging is enabled before creating log entries.
            if (defaultWriter.IsLoggingEnabled())
            {
                defaultWriter.Write("Log entry created using the simplest overload.");
                defaultWriter.Write("Log entry with a single category.", "General");
                defaultWriter.Write("Log entry with a category, priority, and event ID.", "General", 6, 9001);
                defaultWriter.Write("Log entry with a category, priority, event ID, " + "and severity.", "General", 5, 9002, TraceEventType.Warning);
                defaultWriter.Write("Log entry with a category, priority, event ID, " + "severity, and title.", "General", 8, 9003, TraceEventType.Warning, "Logging Block Examples");
            }
            else
            {
                Console.WriteLine("Logging is disabled in the configuration.");
            }
        }

        private static LoggingConfiguration BuildProgrammaticConfig()
        {
            // Formatter
            var formatter = new TextFormatter();

            // Trace Listeners
            var eventLog = new EventLog("Application", ".", "StackOverflow #24309323");
            var eventLogTraceListener = new FormattedEventLogTraceListener(eventLog, formatter);

            // Build Configuration
            var config = new LoggingConfiguration();
            config.AddLogSource("General", SourceLevels.All, true)
                  .AddTraceListener(eventLogTraceListener);

            config.IsTracingEnabled = true;
            return config;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以在Logging Application Block中找到更多详细信息

使用Enterprise Library Configuration Console Extension

要将扩展安装到Visual Studio 2013,您可以按照下面的解决方法步骤进行操作.

  • 链接下载Microsoft.Practices.EnterpriseLibrary.ConfigConsoleV6.vsix

VSIX文件是使用Open Packaging Convention的zip文件.您可以将.VSIX扩展名重命名为.ZIP,并使用任何zip浏览器(包括Windows文件资源管理器)浏览其内容.

  • 将文件解压缩到一个文件夹中
  • 在文件夹中找到名为extension.vsixmanifest的文件
  • notepad.exe打开文件
  • 定位
<SupportedProducts>
  <VisualStudio Version="11.0">
    <Edition>Ultimate</Edition>
    <Edition>Premium</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
</SupportedProducts>
Run Code Online (Sandbox Code Playgroud)
  • 并将其替换为下面的部分
<SupportedProducts>
  <VisualStudio Version="11.0">
    <Edition>Ultimate</Edition>
    <Edition>Premium</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
  <VisualStudio Version="12.0"> <!-- VS2013 -->
    <Edition>Ultimate</Edition>
    <Edition>Premium</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
  <VisualStudio Version="14.0"> <!-- VS2015 -->
    <Edition>Ultimate</Edition>
    <Edition>Premium</Edition>
    <Edition>Pro</Edition>
  </VisualStudio>
</SupportedProducts>
Run Code Online (Sandbox Code Playgroud)

对照

  • 保存文件并退出
  • ZIP再次将文件夹压缩为文件
  • 将扩展名重命名为 VSIX
  • 双击它.


Dei*_*lan 19

技术上与@cilerler建议的相同,但是随时可以下载和使用的解决方案.

Visual Studio 2013: Microsoft.Practices.EnterpriseLibrary.ConfigConsole.V6.VS2013.vsix(Source)Visual Studio 2015: Microsoft.Practices.EnterpriseLibrary.ConfigConsole.V6.VS2015.vsix(Source)