小编Emi*_*nem的帖子

Log4Net,如何在我的日志记录中添加自定义字段

我使用log4net.Appender.AdoNetAppender appender.
我的log4net表是以下字段[Date],[Thread],[Level],[Logger],[Message],[Exception]

我需要在log4net表中添加另一个字段(例如SalesId),但是如何在我的xml和代码中指定在记录错误或信息消息时记录"SalesId"?

例如 log.Info("SomeMessage", SalesId)

这是log4net xml

  <appender name="SalesDBAppender" type="log4net.Appender.AdoNetAppender">
    <bufferSize value="1" />
    <connectionType value ="System.Data.SqlClient.SqlConnection" />
    <connectionString value="Data Source=..." />
    <commandText value="INSERT INTO Log4Net ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" />
    <parameter>
      <parameterName value="@log_date" />
      <dbType value="DateTime" />
      <layout type="log4net.Layout.RawTimeStampLayout" />
    </parameter>
    <parameter>
      <parameterName value="@thread" />
      <dbType value="String" />
      <size value="255" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%thread" />
      </layout>
    </parameter>
    <parameter>
      <parameterName value="@log_level" />
      <dbType value="String" />
      <size value="50" />
      <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%level" /> …
Run Code Online (Sandbox Code Playgroud)

c# log4net appender

94
推荐指数
2
解决办法
6万
查看次数

在foreach循环中检查null

有没有更好的方法来执行以下操作:
我需要在继续循环之前检查file.Headers上的null

if (file.Headers != null)
{
  foreach (var h in file.Headers)
  {
   //set lots of properties & some other stuff
  }
}
Run Code Online (Sandbox Code Playgroud)

简而言之,由于我的代码中发生缩进的程度,因此将foreach写入if中看起来有点难看.

是值得评价的东西

foreach(var h in (file.Headers != null))
{
  //do stuff
}
Run Code Online (Sandbox Code Playgroud)

可能?

c# foreach null loops

79
推荐指数
6
解决办法
6万
查看次数

Visual Studio设置存储在哪里?

我正在使用visual studio 2013.我工作的公司已经更改了域名(例如从abc.com到ayebecee.com),这显然意味着必须创建新的登录配置文件等.现在我启动了visual studio但是所有我安装的插件和设置都"消失了".基本上我需要知道存储设置和插件的位置,以便我可以将它们复制到我的新Windows配置文件中.

settings user-profile visual-studio visual-studio-2013

19
推荐指数
5
解决办法
3万
查看次数

面向组件的语言和面向对象的语言有什么区别?

我在一本关于WCF的书中遇到过这一行:

...用于编写COM组件的语言(例如C++和Visual Basic)最好是面向对象的,但不是面向组件的......

两者有什么区别?

oop com

15
推荐指数
1
解决办法
1万
查看次数

C#工厂模式和IoC之间的差异

可能重复:
依赖注入与工厂模式

有人可以解释(简单例子)工厂模式和反转控制模式之间的区别.最好使用.NET2.0

c# design-patterns factory inversion-of-control

13
推荐指数
1
解决办法
1万
查看次数

如何将List <string>分配给JavaScript数组或可枚举对象

我有以下内容:

ViewBag.SomeEnumerable = new List<string>() { "string1", "string2" };
Run Code Online (Sandbox Code Playgroud)

现在我如何在JavaScript端分配ViewBag.SomeEnumerable一个array或某种形式的可枚举对象?例如:

function SomeFunction()
{
  var array = @ViewBag.SomeEnumerable;
  for(var eachItem in array)
  {
    alert(eachItem); // should display "string1" then string2"
  }
}
Run Code Online (Sandbox Code Playgroud)

javascript c# viewbag asp.net-mvc-3

12
推荐指数
1
解决办法
2万
查看次数

如何删除所有eventhandler

让我们说我们有一个代表

public delegate void MyEventHandler(string x);
Run Code Online (Sandbox Code Playgroud)

和一个事件处理程序

public event MyEventHandler Something;
Run Code Online (Sandbox Code Playgroud)

我们添加了多个事件..

for(int x = 0; x <10; x++)  
{
   this.Something += HandleSomething;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是..如何从事件处理程序中删除所有方法,假设一个人不知道它已被添加10(或更多或更少)次?

c# delegates event-handling

11
推荐指数
1
解决办法
8779
查看次数

如何解决此模糊调用错误

我在编译时遇到以下错误.如何解决它而不必使用不同的函数名称

private double SomeMethodName(SomeClassType value)
{           
    return 0.0;
}
private double SomeMethodName(ADifferentClassType value)
{
    if (value == null)
    {
        return this.SomeMethodName(null);  //<- error
    }
    return this.SomeMethodName(new SomeClassType());  
}
Run Code Online (Sandbox Code Playgroud)

c# compiler-errors

10
推荐指数
1
解决办法
1815
查看次数

如何传递'null'动作

我有以下功能定义

private void DoExport(Action<ColumnView, bool> UpdateColumns)  
{  
...  
}

private void UpdateNonPrintableColumns(ColumnView view, bool visible)  
{  
...  
}   
Run Code Online (Sandbox Code Playgroud)

被调用的示例:

DoExport(UpdateNonPrintableColumns);
Run Code Online (Sandbox Code Playgroud)

我的问题是.如何传递'null'动作?它甚至可能吗?

例如
DoExport(null); <- Throws exception

在函数体中调用操作时,DoExport(null)会引发异常

.net c#

9
推荐指数
2
解决办法
8504
查看次数

RDF Triple是RDF声明吗?

正如问题的主题所问,2是同一件事吗?它们可以互换吗?如果没有,请通过示例解释差异或提供说明.

rdf semantic-web

8
推荐指数
2
解决办法
901
查看次数