diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageChangeEvent.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageChangeEvent.cs
index ed1b4eff..03de8c5d 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageChangeEvent.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageChangeEvent.cs
@@ -35,19 +35,48 @@
///
/// 获取或设置用户管理订阅通知数据列表。
///
- [Newtonsoft.Json.JsonProperty("List")]
- [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("List", typeof(Types.EventItem))]
public Types.EventItem[] EventList { get; set; } = default!;
}
}
+ private readonly object _lockObj = new object();
+
///
/// 获取或设置事件数据。
///
- [Newtonsoft.Json.JsonProperty("SubscribeMsgChangeEvent")]
- [System.Text.Json.Serialization.JsonPropertyName("SubscribeMsgChangeEvent")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("SubscribeMsgChangeEvent")]
public Types.EventData EventData { get; set; } = default!;
+
+ ///
+ /// 获取或设置用户管理订阅通知数据列表。
+ /// 等效于
+ ///
+ [Newtonsoft.Json.JsonProperty("List")]
+ [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [System.Xml.Serialization.XmlIgnore]
+ public Types.EventData.Types.EventItem[]? EventDataList
+ {
+ get { return this.EventData?.EventList; }
+ set
+ {
+ if (this.EventData == null)
+ {
+ lock (_lockObj)
+ {
+ if (this.EventData == null)
+ {
+ this.EventData = new Types.EventData();
+ }
+ }
+ }
+
+ this.EventData.EventList = value!;
+ }
+ }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessagePopupEvent.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessagePopupEvent.cs
index 593bfa32..b8a66a4c 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessagePopupEvent.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessagePopupEvent.cs
@@ -43,19 +43,48 @@
///
/// 获取或设置用户订阅通知弹窗数据列表。
///
- [Newtonsoft.Json.JsonProperty("List")]
- [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("List", typeof(Types.EventItem))]
public Types.EventItem[] EventList { get; set; } = default!;
}
}
+ private readonly object _lockObj = new object();
+
///
/// 获取或设置事件数据。
///
- [Newtonsoft.Json.JsonProperty("SubscribeMsgPopupEvent")]
- [System.Text.Json.Serialization.JsonPropertyName("SubscribeMsgPopupEvent")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("SubscribeMsgPopupEvent")]
public Types.EventData EventData { get; set; } = default!;
+
+ ///
+ /// 获取或设置用户订阅通知弹窗数据列表。
+ /// 等效于
+ ///
+ [Newtonsoft.Json.JsonProperty("List")]
+ [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [System.Xml.Serialization.XmlIgnore]
+ public Types.EventData.Types.EventItem[]? EventDataList
+ {
+ get { return this.EventData?.EventList; }
+ set
+ {
+ if (this.EventData == null)
+ {
+ lock (_lockObj)
+ {
+ if (this.EventData == null)
+ {
+ this.EventData = new Types.EventData();
+ }
+ }
+ }
+
+ this.EventData.EventList = value!;
+ }
+ }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageSentEvent.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageSentEvent.cs
index 487876e7..05945bb9 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageSentEvent.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Events/MpSubscribeMessage/SubscribeMessageSentEvent.cs
@@ -51,19 +51,48 @@
///
/// 获取或设置发送订阅通知数据列表。
///
- [Newtonsoft.Json.JsonProperty("List")]
- [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("List", typeof(Types.EventItem))]
public Types.EventItem[] EventList { get; set; } = default!;
}
}
+ private readonly object _lockObj = new object();
+
///
/// 获取或设置事件数据。
///
- [Newtonsoft.Json.JsonProperty("SubscribeMsgSentEvent")]
- [System.Text.Json.Serialization.JsonPropertyName("SubscribeMsgSentEvent")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
[System.Xml.Serialization.XmlElement("SubscribeMsgSentEvent")]
public Types.EventData EventData { get; set; } = default!;
+
+ ///
+ /// 获取或设置发送订阅通知数据列表。
+ /// 等效于
+ ///
+ [Newtonsoft.Json.JsonProperty("List")]
+ [System.Text.Json.Serialization.JsonPropertyName("List")]
+ [System.Xml.Serialization.XmlIgnore]
+ public Types.EventData.Types.EventItem[]? EventDataList
+ {
+ get { return this.EventData?.EventList; }
+ set
+ {
+ if (this.EventData == null)
+ {
+ lock (_lockObj)
+ {
+ if (this.EventData == null)
+ {
+ this.EventData = new Types.EventData();
+ }
+ }
+ }
+
+ this.EventData.EventList = value!;
+ }
+ }
}
}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageChangeEvent.json b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageChangeEvent.json
new file mode 100644
index 00000000..8edc4d62
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageChangeEvent.json
@@ -0,0 +1,13 @@
+{
+ "ToUserName": "gh_123456789abc",
+ "FromUserName": "o7esq5OI1Uej6Xixw1lA2H7XDVbc",
+ "CreateTime": "1610968440",
+ "MsgType": "event",
+ "Event": "subscribe_msg_change_event",
+ "List": [
+ {
+ "TemplateId": "BEwX0BOT3MqK3Uc5oTU3CGBqzjpndk2jzUf7VfExd8",
+ "SubscribeStatusString": "reject"
+ }
+ ]
+}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessagePopupEvent.json b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessagePopupEvent.json
new file mode 100644
index 00000000..3ab6d23c
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessagePopupEvent.json
@@ -0,0 +1,14 @@
+{
+ "ToUserName": "gh_123456789abc",
+ "FromUserName": "o7esq5OI1Uej6Xixw1lA2H7XDVbc",
+ "CreateTime": "1620973045",
+ "MsgType": "event",
+ "Event": "subscribe_msg_popup_event",
+ "List": [
+ {
+ "TemplateId": "hD-ixGOhYmUfjOnI8MCzQMPshzGVeux_2vzyvQu7O68",
+ "SubscribeStatusString": "accept",
+ "PopupScene": "0"
+ }
+ ]
+}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageSentEvent.json b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageSentEvent.json
new file mode 100644
index 00000000..ef62be52
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/EventSamples/MpSubscribeMessage/SubscribeMessageSentEvent.json
@@ -0,0 +1,15 @@
+{
+ "ToUserName": "gh_123456789abc",
+ "FromUserName": "o7esq5PHRGBQYmeNyfG064wEFVpQ",
+ "CreateTime": "1620963428",
+ "MsgType": "event",
+ "Event": "subscribe_msg_sent_event",
+ "List": [
+ {
+ "TemplateId": "BEwX0BO-T3MqK3Uc5oTU3CGBqzjpndk2jzUf7VfExd8",
+ "MsgID": "1864323726461255680",
+ "ErrorCode": "0",
+ "ErrorStatus": "success"
+ }
+ ]
+}