Возвращение значения из анонимного метода - C#

Узнай цену своей работы

Формулировка задачи:

Как вернут значение из анонимных методов
Листинг программы
  1. returnRate = d;
? Или какой иной подход использовать?
Листинг программы
  1. using SocketIOClient;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. namespace ConsoleApplication9
  8. {
  9. class Program
  10. {
  11. static void Main(string[] args)
  12. {
  13. Cars c = new Cars();
  14. Bicycles b = new Bicycles();
  15. }
  16. }
  17. public class Cars
  18. {
  19. public Cars()
  20. {
  21. GetData G1 = new GetData();
  22. Dictionary<string, string> D1 = new Dictionary<string, string>();
  23. G1.ProcessCars(ref D1);
  24. }
  25. }
  26. public class Bicycles
  27. {
  28. public Bicycles()
  29. {
  30. GetData G2 = new GetData();
  31. Dictionary<string, string> D2 = new Dictionary<string, string>();
  32. G2.ProcessBicycles(ref D2);
  33. }
  34. }
  35. public class Singleton
  36. {
  37. private static Singleton instance;
  38. public Dictionary<string, Action<MessageEventArgs>> Handle;
  39. private Singleton()
  40. {
  41. Handle = new Dictionary<string, Action<MessageEventArgs>>();
  42. }
  43. public static Singleton Instance
  44. {
  45. get
  46. {
  47. if (instance == null)
  48. {
  49. instance = new Singleton();
  50. }
  51. return instance;
  52. }
  53. }
  54. }
  55. public class GetData
  56. {
  57. private Client socket;
  58. public GetData()
  59. {
  60. socket = new Client("http://echo.jsontest.com/bicycles/10");
  61. socket.Message += Message;
  62. }
  63. public void ProcessBicycles(ref Dictionary<string, string> returnRate)
  64. {
  65. Singleton.Instance.Handle.Add("bicycles", (m) =>
  66. {
  67. Dictionary<string, string> d = m.Message.Json.GetFirstArgAs<Dictionary<string, string>>() as Dictionary<string, string>;
  68. //returnRate = d;
  69. });
  70. }
  71. public void ProcessCars(ref Dictionary<string, string> returnRate)
  72. {
  73. Singleton.Instance.Handle.Add("cars", (m) =>
  74. {
  75. Dictionary<string, string> d = m.Message.Json.GetFirstArgAs<Dictionary<string, string>>() as Dictionary<string, string>;
  76. //returnRate = d;
  77. });
  78. }
  79. private void Message(object sender, MessageEventArgs e)
  80. {
  81. if (Singleton.Instance.Handle.ContainsKey(e.Message.Event))
  82. {
  83. Singleton.Instance.Handle[e.Message.Event](e);
  84. }
  85. }
  86. }
  87. }

Решение задачи: «Возвращение значения из анонимного метода»

textual
Листинг программы
  1. public Dictionary<string, Action<MessageEventArgs>> Handle;

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.462 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы