Caller information gives information about the caller of any function. This concept was introduced in C# 5.0 . In C# 5.0 the caller info feature has introduced and using this feature we can easily get information about caller function.

These three types of attributes that are used in tracking information..

  • CallerFilePath: Sets the information about caller's source code file.
  • CallerLineNumber: Sets the information about caller's line number.
  • CallerMemberName: Sets the information about caller member name.

Let us take an example:

  1. using System;
  2. using System.Runtime.CompilerServices;
  3. namespace ConsApp
  4. {
  5. class Program
  6. {
  7. public void Call(string text, [CallerFilePath] string File_name = "",
  8. [CallerLineNumber] int Line = 0,
  9. [CallerMemberName] string member_name = "")
  10. {
  11. Console.WriteLine(text);
  12. Console.WriteLine(File_name);
  13. Console.WriteLine(Line);
  14. Console.WriteLine(member_name);
  15. }
  16. static void Main(string[] args)
  17. {
  18. Program Obj = new Program();
  19. Obj.Call("This is Caller Method");
  20. Console.ReadLine();
  21. }
  22. }
  23. }

Output

Before the tracking information used the StactTrack to find out the tracking information of a method that was very complicated to handle.