一、说明

应用信使是在进程内的,行使注册和触发功能的组件。可代替事件,可跨越程序集,可实现依赖倒置,使用体验接近RPC,但是不涉及序列化和反序列化,所有的数据均是应用内数据。

Nuget Package:RRQMCore

二、使用

【声明主体】
实现IMessage接口,然后增加AppMessage标记的公共方法。

  1. public class MessageObject : IMessage
  2. {
  3. [AppMessage]
  4. public int Add(int a, int b)
  5. {
  6. return a + b;
  7. }
  8. [AppMessage]
  9. public int Sub(int a, int b)
  10. {
  11. return a - b;
  12. }
  13. }

【注册】
下列演示时,是新实例化的AppMessenger,实际上,用户可以直接使用AppMessenger.Default默认实例。

  1. AppMessenger appMessenger = new AppMessenger();
  2. appMessenger.Register<MessageObject>();

【触发】
触发时,泛型类型,即时返回值类型。

  1. int add = appMessenger.Send<int>("Add", 20, 10);
  2. Assert.Equal(30,add);
  3. int sub = appMessenger.Send<int>("Sub", 20, 10);
  4. Assert.Equal(10, sub);