【问题标题】:Castle Windsor Visual Studio Code Snippet for ILoggerILogger 的 Castle Windsor Visual Studio 代码片段
【发布时间】:2014-03-18 18:08:56
【问题描述】:

在 Visual Studio 中,您可以使用代码 sn-ps,例如当您正在编辑一个类时,您可以键入ctor,默认构造函数将自动添加到您的类中。 是否可以在 Visual Studio 中创建代码 sn-p,执行以下操作:

  • 在光标所在的位置创建 get/set Logger 属性。
  • 添加using Castle.Core.Logging
  • 让我选择可以在实例变量列表中放置private ILogger _logger = NullLogger.Instance; 的位置。
public class Person
{
    private string name;
    private int age;

    public Person()
    {
    }

    // cursor is here and you type "logger"
}

在你输入logger之后,Visual Studio 添加以下代码:

using Castle.Core.Logging; // Added by code snippet

public class Person
{
    private string name;
    private ILogger _logger = NullLogger.Instance; // Added by code snippet
    private int age;

    public Person()
    {
    }

    // Added by code snippet
    public ILogger Logger
    {
        get { return _logger; }
        set { _logger = value; }
    }
}

【问题讨论】:

  • 此 SO 问题可能包含您正在寻找的一些代码 stackoverflow.com/q/5872131/122005
  • 这个问题是关于记录器何时被温莎城堡注入的。我想要 Visual Studio 的代码 sn-p。在 Visual Studio 中,当您编辑一个类时,您可以键入 ctor 并将默认构造函数添加到该类中。我想输入 logger 并将记录器代码添加到我的课程中。

标签: c# visual-studio castle-windsor code-snippets


【解决方案1】:

这里有两个很棒的教程How to: Create a Basic Code Snippet & How to: Manage Code Snippets

总结如下,

  1. 创建一个 .sn-p 文件;这是一个 XML 文件,其中包含您要添加的代码和引用。基本示例包括除快捷方式之外的所有要求。
  2. 将代码 sn-p 导入您的 Visual Studio 实例。
  3. 尽情使用

如果您愿意,我们很乐意提供一个示例。

因为我已经创建了 sn-p 来测试它,所以您需要以下内容。不言而喻,您需要根据自己的需要进行编辑。

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
    xmlns="http://schemas.microsoft.com/VisualStudio/2010/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
      <Title>
        Log4Net instance using Castle.Core.Logging
      </Title>
      <Shortcut>logger</Shortcut>
    </Header>
    <Snippet>
      <References>
        <Reference>
          <Assembly>Castle.Core.Logging.dll</Assembly>
        </Reference>
      </References>
      <Imports>
        <Import>
          <Namespace>Castle.Core.Logging</Namespace>
        </Import>
      </Imports>
      <Code Language="CSharp">
        <![CDATA[private ILogger _logger = NullLogger.Instance;
        public ILogger Logger
    {
        get { return _logger; }
        set { _logger = value; }
    }]]>
      </Code>
    </Snippet>
  </CodeSnippet>
</CodeSnippets>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-09-07
    • 1970-01-01
    • 2016-11-17
    • 2011-07-05
    • 1970-01-01
    • 1970-01-01
    • 2016-02-20
    相关资源
    最近更新 更多