修复进程间通讯消息序列号异常问题
This commit is contained in:
parent
e5c23c26ef
commit
b3980da48f
|
@ -134,6 +134,7 @@ public class SystemParamsService
|
||||||
};
|
};
|
||||||
|
|
||||||
await MessageQueueHelper.Publish(Topics.ReportConfigData, systemParams);
|
await MessageQueueHelper.Publish(Topics.ReportConfigData, systemParams);
|
||||||
|
await MessageQueueHelper.Publish(Topics.ReportConfigData, systemParams);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
|
|
@ -64,7 +64,6 @@ public class ProcessHelper
|
||||||
if (dictionary == null) return;
|
if (dictionary == null) return;
|
||||||
|
|
||||||
var topic = dictionary["Topic"] as string;
|
var topic = dictionary["Topic"] as string;
|
||||||
var data = dictionary["Data"];
|
|
||||||
|
|
||||||
if (!Subscribers.TryGetValue(topic, out var subscribers)) return;
|
if (!Subscribers.TryGetValue(topic, out var subscribers)) return;
|
||||||
|
|
||||||
|
@ -75,9 +74,21 @@ public class ProcessHelper
|
||||||
var methodInfo = subscriber.Method;
|
var methodInfo = subscriber.Method;
|
||||||
var parameters = methodInfo.GetParameters();
|
var parameters = methodInfo.GetParameters();
|
||||||
if (parameters.Length != 2) continue;
|
if (parameters.Length != 2) continue;
|
||||||
var type = parameters[1].ParameterType;
|
|
||||||
|
var dataType = parameters[1].ParameterType;
|
||||||
|
|
||||||
|
var type = typeof(Message<>).MakeGenericType(dataType);
|
||||||
|
|
||||||
|
var payload = JsonUtil.FromJson(type, message);
|
||||||
|
|
||||||
|
if (payload == null) continue;
|
||||||
|
|
||||||
|
var property = type.GetProperty("Data");
|
||||||
|
|
||||||
|
var data = property?.GetValue(payload);
|
||||||
|
|
||||||
// 通知订阅者
|
// 通知订阅者
|
||||||
subscriber.DynamicInvoke(topic, JsonUtil.FromJson(type, message));
|
subscriber.DynamicInvoke(topic, data);
|
||||||
}
|
}
|
||||||
catch (Exception exception)
|
catch (Exception exception)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue