рджреГрд╢реНрдп рд╕реНрдЯреВрдбрд┐рдпреЛ рдбреАрдмрдЧрд░ рдпрд╛ "BugAid For Visual Studio" рд╕реЗ рдПрдХ рдирдП рд╢рдмреНрдж рдореЗрдВ рд╕реВрдЪрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди

рдЬрдм рдЖрдкрдХреЛ Visual Studio рдбреАрдмрдЧрд░ рдореЗрдВ рд╕реВрдЪреА (рд╕рд░рдгреА) рддрддреНрд╡реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмреНрд░рд╛рдЙрдЬрд╝ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, QuickWatch рд╡рд┐рдВрдбреЛ рдореЗрдВ, рдЖрдк рдЕрдХреНрд╕рд░ рдбреЗрдЯрд╛ рдХреА рдПрдХ рдЬрдЯрд┐рд▓ (рдпрд╛ рд▓рдВрдмреА) рд╕реВрдЪреА рджреЗрдЦрдиреЗ рдХреА рдЕрд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рднреА рд╕реВрдЪреА рдорджреЛрдВ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЗрдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИред
рдпрд╣ рдкреЛрд╕реНрдЯ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ "рдмрд┐рд▓реНрдЯ-рдЗрди" рддрд░реАрдХреЗ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдФрд░ BugAid рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИред
рдХреБрдЫ рдкрддреНрд░, рд▓реЗрдХрд┐рди рдкрд░реНрдпрд╛рдкреНрдд рдЪрд┐рддреНрд░ред



рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред

public class DataItem { public string Name { get; private set; } public string Description { get; private set; } public DataItem(string name, string description) { Name = name; Description = description; } } public class DataItems { public List<DataItem> Items { get; private set; } public DataItems() { Items = new List<DataItem>(); } } 


рдЕрдм рдбрд┐рдмрдЧрд░ рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╣рдо рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ рджреЗрдЦрддреЗ рд╣реИрдВ:


рдорд╛рдирдХ рдХреНрд╡рд┐рдХрд╡реЗрдЪ рд╣рдореЗрдВ рд╕реВрдЪреА рдХреЗ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝реАрд▓реНрдб (рдпрд╛ рд╕реНрд╡рд░реВрдкрд┐рдд рдлрд╝реАрд▓реНрдб) рджреЗрдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред

рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ ToString () рд╡рд┐рдзрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╕реАрдзрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирддреЗ рд╣реИрдВ:

  public class DataItem { public string Name { get; private set; } public string Description { get; private set; } public DataItem(string name, string description) { Name = name; Description = description; } public override string ToString() { return String.Format("{0}: {1}", Name, Description); } } 




рдпрд╛ рдЕрдзрд┐рдХ "рд╡рд┐рд╢реЗрд╖рддрд╛" рд╡рд┐рдзрд┐:
  [DebuggerDisplay("Name = {Name}, Desciption = {Description}")] public class DataItem { public string Name { get; private set; } public string Description { get; private set; } public DataItem(string name, string description) { Name = name; Description = description; } } 



рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдбреАрдмрдЧрд░рдЯрд╛рдЗрдкрдкреНрд░реЙрдХреНрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕реАрдорд╛ рдирд╣реАрдВ рд╣реИ :)ред

рдпреЗ рджреЛ рддрд░реАрдХреЗ рдЕрдЪреНрдЫреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрдирдХрд╛ рдиреБрдХрд╕рд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдм рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛрдб рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕рдВрдХрд▓рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдЕрдХреНрд╕рд░ рдЖрдкрдХреЛ рд╡рд┐рднрд┐рдиреНрди рд╕реНрд╡рд░реВрдкреЛрдВ рдореЗрдВ рд╕реВрдЪреА рдбреЗрдЯрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП рдбрд┐рдмрдЧрд░ рдХреЛ рд░реЛрдХрдирд╛, рдХреЛрдб рдпрд╛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдмрджрд▓рдирд╛, рдкреБрди: рдЬрдорд╛ рдХрд░рдирд╛ рдФрд░ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓рд╛ рддрд░реАрдХрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдирд┐рдХрд▓рд╛, рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ (рдХрдо рд╕реЗ рдХрдо VS2010 рдХреЗ рд╕рд╛рде) рдХреЗ рд▓рд┐рдП рдмрдЧреИрдб рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЙрд╕реА рд╕рдордп рдХреБрдЫ рдЕрдиреНрдпред

рдЗрд╕ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, BugAid рдореЗрдиреВ рдХреБрдЫ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ "BugAid - QuickWatch" рд╡рд┐рдВрдбреЛ рдХреЗ рд╕рд╛рде рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред
рдЕрдм рдЖрдк рд╕реВрдЪреА рдХреЗ рд╕рднреА рддрддреНрд╡реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрди рдлрд╝реАрд▓реНрдб рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддрд╛рд░рд╛рдВрдХрди рдЪрд┐рд╣реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЖрдк рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ


рдФрд░ рдЖрд╡рд╛рдЬ



рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдм рдирд╣реАрдВ рд╣реИред рдЬрд▓реНрдж рд╣реА, рдпрд╣ рд╕рд┐рд░реНрдл рд╢реБрд░реБрдЖрдд рд╣реИред
рд▓реЗрдХрд┐рди рдЖрдк рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣рд▓рдЪрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдРрд╕рд╛ рдХреБрдЫ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЖрдк " рдХрд╕реНрдЯрдо рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЬреЛрдбрд╝реЗрдВ " рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕реВрдЪреА рдЖрдЗрдЯрдо рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ: " [obj] .Name.Length " рдХреА рддрд░рд╣ рдХреБрдЫред



рд╕рдВрдХрд▓рди рдФрд░ "рдпреЛрдЧрджрд╛рди" рдХреЗ рдмрд┐рдирд╛ рдХрд╕реНрдЯрдо рдбреЗрдЯрд╛ рдкреНрд░рд╛рд░реВрдк рдХрд╛ "рдЖрдирдВрдж рд▓реЗрдВ":



рд▓реЗрдХрд┐рди рдХрд┐рддрдиреА рдмрд╛рд░ рдореИрдВ Google рдХреЛ рдХрд┐рд╕реА рдЬрдЯрд┐рд▓ рд╕реВрдЪреА рдХреЗ рдХрд┐рд╕реА рднреА рдбреЗрдЯрд╛ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛?
рдФрд░ рдЗрд╕рд▓рд┐рдП рд╣рдо рдЦреЛрдЬ рдлрд╝реАрд▓реНрдб рдореЗрдВ рдбреНрд░рд╛рдЗрд╡ рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рдвреВрдВрдврдирд╛ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ:





рд▓реЗрдХрд┐рди рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рд╕реВрдЪреА рдЖрдЗрдЯрдо рдХреА рдПрдХ рдЬреЛрдбрд╝реА рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
рдпрд╣ рднреА рд╕рдВрднрд╡ рд╣реИ: рдкрд╣рд▓рд╛ рддрддреНрд╡ " рд╕реЗрд▓реЗрдХреНрдЯ рд▓реЗрдлреНрдЯ рд╕рд╛рдЗрдб рдлреЙрд░ рддреБрд▓рдирд╛ " рдореЗрдиреВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЪреБрдирд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рджреВрд╕рд░рд╛ - " рддреБрд▓рдирд╛ рдХрд░реЗрдВ ... " рдФрд░ рдЕрдВрддрд░ рдХреЛ рджреЗрдЦреЗрдВ:


рдлрд┐рд░, рдбреЗрдЯрд╛ рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛:




рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдк рдЖрдЗрдЯрдо рдХреЛ рд╕рд╣реЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдЖрдЗрдЯрдо рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

BugAid рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЗрдВ рдХреБрдЫ рдФрд░ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдПрдХ рдмрдпрд╛рди рдореЗрдВ рдЬрдЯрд┐рд▓ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП )ред

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд╕реНрддрд╛рд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрд╛ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдЦрд╛рдорд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╢рдмреНрдж рдЬреЛ рдореИрдВрдиреЗ рдЦреЛрдЬреЗред


рд╡реИрд╕реЗ, рд╕рдорд░реНрдерди рд╕рд╛рдЗрдЯ http://bugaidsoftware.userecho.com/ рдХрд╛рдлреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдФрд░ рдЧреЗрдорд┐рдлрд╝рд┐рдХреЗрд╢рди рдХрд╛ рд╕рдореНрдорд╛рди рдХрд░рддреА рд╣реИ, рдЬреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИред

рдзрдиреНрдпрд╡рд╛рдж
рдЗрдЧреЛрд░ред

Source: https://habr.com/ru/post/In181604/


All Articles