Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否可以侦听C中的函数调用(即将C函数调用视为事件)?_C# - Fatal编程技术网

C# 是否可以侦听C中的函数调用(即将C函数调用视为事件)?

C# 是否可以侦听C中的函数调用(即将C函数调用视为事件)?,c#,C#,我想在调用我的应用程序中的函数时登录。是否有一种方法可以侦听调用的函数并在此类事件上运行代码 如果是的话,我从哪里开始看如何做到这一点?< P>如果你不想用日志来分散你的方法,考虑使用面向方面的编程库来做。 是一个说明这个问题的博客。 < P>如果你不想用日志分散你的方法,考虑使用面向方面的编程库来做。 这是一个说明这一点的博客。只要把日志直接插入你想要的地方就行了 public class MyClass { private ILogger _logger; public M

我想在调用我的应用程序中的函数时登录。是否有一种方法可以侦听调用的函数并在此类事件上运行代码


如果是的话,我从哪里开始看如何做到这一点?

< P>如果你不想用日志来分散你的方法,考虑使用面向方面的编程库来做。

是一个说明这个问题的博客。

< P>如果你不想用日志分散你的方法,考虑使用面向方面的编程库来做。
这是一个说明这一点的博客。

只要把日志直接插入你想要的地方就行了

public class MyClass
{
    private ILogger _logger;

    public MyClass(ILogger logger)
    {
        _logger = logger;
    }

    public void DoSomething()
    {
        logger.Information("Something happened");
    }
}
这将允许您为您的类定制日志记录需求——特别是如果您使用类似于的东西来配合


我怀疑面向方面的日志记录方法是否真的能让您获得很好的有用的语义日志记录体验。

只需将日志直接插入您想要的地方即可

public class MyClass
{
    private ILogger _logger;

    public MyClass(ILogger logger)
    {
        _logger = logger;
    }

    public void DoSomething()
    {
        logger.Information("Something happened");
    }
}
这将允许您为您的类定制日志记录需求——特别是如果您使用类似于的东西来配合


我怀疑面向方面的日志记录方法是否真的能让您获得很好的有用的语义日志记录体验。

您这样做的目的是什么?它是用于性能分析,还是因为您希望在函数被调用x次时执行某些操作

如果它用于性能评测,如果您使用的是Visual Studio,则IDE具有一些内置评测功能。在Debug菜单下,有performance Profiler Alt+F2。在应用程序上运行它可以为您提供许多有关调用内容、时间、CPU负载等的详细信息。如果您在运行之后生成Create detail报告,那么这将非常有用


这有点难以解释,但如果您对在应用程序中花费多少时间来完成各种功能感兴趣,那么它可能非常有用。

您想这样做是为了什么?它是用于性能分析,还是因为您希望在函数被调用x次时执行某些操作

如果它用于性能评测,如果您使用的是Visual Studio,则IDE具有一些内置评测功能。在Debug菜单下,有performance Profiler Alt+F2。在应用程序上运行它可以为您提供许多有关调用内容、时间、CPU负载等的详细信息。如果您在运行之后生成Create detail报告,那么这将非常有用


解释起来有点困难,但如果您对在应用程序中执行各种函数所花费的时间感兴趣,那么它可能非常有用。

为什么不在函数中添加对日志记录方法的调用呢?我在某些函数中会这样做,但是现在记录所有函数的开始和结束时间戳会很有用为什么不只是在函数中添加对日志记录方法的调用?我在某些函数中这样做,但是现在记录所有功能的开始和结束时间戳会很有用谢谢-我正在寻找一种面向方面的方法,该博客看起来很有用谢谢-我正在寻找一种面向方面的方法,该博客看起来很有用