{"id":279,"date":"2021-05-10T15:05:01","date_gmt":"2021-05-10T07:05:01","guid":{"rendered":"https:\/\/zechs.taipei\/?p=279"},"modified":"2021-05-11T15:09:49","modified_gmt":"2021-05-11T07:09:49","slug":"c-class%e5%85%a7%e8%a8%ad%e8%a8%88handler%e5%82%b3%e9%81%9e%e4%ba%8b%e4%bb%b6%e5%92%8c%e5%85%a7%e5%ae%b9","status":"publish","type":"post","link":"https:\/\/zechs.taipei\/?p=279","title":{"rendered":"[C#] class\u5167\u8a2d\u8a08Event\u3001Handler\u50b3\u905e\u4e8b\u4ef6\u548c\u5167\u5bb9"},"content":{"rendered":"<h2 class=\"wp-block-heading\">\u5b50\u985e\u5225\u5167<\/h2>\n\n\n\n<p>\u7576\u8a2d\u8a08\u4e00\u500b\u5b50\u985e\u5225\uff0c\u53bb\u8655\u7406UART\u3001Serial\u3001TCP\u3001UDP\u3001HTTP\u3001MQTT\u7b49\u90e8\u5206\u7684Receive\u6642\u3002<br>\u5982\u4f55\u8a2d\u8a08\u4e00\u500b\u4e8b\u4ef6\u3001\u7576\u4e0a\u8ff0\u4e8b\u4ef6\u7684callback\u6536\u5230\u6642\uff0c\u4e3b\u52d5callback\u7d66\u547c\u53ebclass\u8005<\/p>\n\n\n\n<p>\u8b93\u547c\u53eb\u8005\u53bb\u63a5\u6536\u8655\u7406\u9019\u4e9b\u8cc7\u8a0a\u7684\u65b9\u6cd5<\/p>\n\n\n\n<p>\u8acb\u53c3\u8003\u5982\u4e0b<\/p>\n\n\n\n<p>\u5728<strong>\u5b50\u985e\u5225<\/strong>\u5167\u65b0\u589e\u4e8b\u4ef6Handler<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/\u65b0\u589e\u4e00\u500bHandler\uff0c\u6703\u5e6b\u5fd9\u50b3\u9001message\npublic delegate void ReceiveMessageEventHandler(string message);<\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\/\/\u65b0\u589e\u4e00\u500b\u4e8b\u4ef6\u7684\u5be6\u4f8bReceiveMessageNotify=>\u7528\u65bc\u89f8\u767c\u9019\u500b\u4e8b\u4ef6\u7528\n\/\/\u6839\u64daHandler\u3001\u53ef\u4ee5\u5e36\u5165\u53c3\u6578message\npublic event ReceiveMessageEventHandler ReceiveMessageNotify;<\/pre>\n\n\n\n<p>\u5728<strong>\u5b50\u985e\u5225<\/strong>\u5167\uff0c\u9700\u8981\u89f8\u767c\u9019\u500b\u4e8b\u4ef6\u7684\u5730\u65b9\u547c\u53eb<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"> \/*\n  * \u89f8\u767c\u4e8b\u4ef6\uff0c\u50b3\u5165msg\u5230message\u4e8b\u4ef6\n  *\/\n ReceiveMessageNotify(msg);<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\u4e3b\u985e\u5225\u5167<\/h2>\n\n\n\n<p>\u5728<strong>\u4e3b\u985e\u5225<\/strong>\u5167\uff0c\u8a3b\u518a\u9019\u500bHandler<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"csharp\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">  \/\/\u8a3b\u518aReceiveMessageNotify\u4e8b\u4ef6Handler\u7531mqttReveiveMessagec\u51fd\u6578\u8655\u7406\n  \/\/\u5167\u5bb9\u5e36\u8457message\n  mqtt.ReceiveMessageNotify += new CHT_MQTT.ReceiveMessageEventHandler(mqttReveiveMessage);<\/pre>\n\n\n\n<p>\u5728<strong>\u4e3b\u985e\u5225<\/strong>\u5167\uff0c\u5be6\u4f5cmqttReveiveMessage\u9019\u500b\u51fd\u6578<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">void mqttReveiveMessage(string message)\n{\n   Debug.WriteLine(\"===mqttReveiveMessage===\");\n   Debug.WriteLine(\"msg\\r\\n\" + message);\n}<\/pre>\n\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>\u5b50\u985e\u5225\u5167 \u7576\u8a2d\u8a08\u4e00\u500b\u5b50\u985e\u5225\uff0c\u53bb\u8655\u7406UART\u3001Serial\u3001TCP\u3001UDP\u3001HTTP\u3001MQTT\u7b49\u90e8\u5206\u7684Recei &#8230; <a title=\"[C#] class\u5167\u8a2d\u8a08Event\u3001Handler\u50b3\u905e\u4e8b\u4ef6\u548c\u5167\u5bb9\" class=\"read-more\" href=\"https:\/\/zechs.taipei\/?p=279\" aria-label=\"\u95b1\u8b80\u3008[C#] class\u5167\u8a2d\u8a08Event\u3001Handler\u50b3\u905e\u4e8b\u4ef6\u548c\u5167\u5bb9\u3009\u5168\u6587\">\u95b1\u8b80\u5168\u6587<\/a><\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-279","post","type-post","status-publish","format-standard","hentry","category-tech"],"_links":{"self":[{"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/posts\/279","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zechs.taipei\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=279"}],"version-history":[{"count":6,"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/posts\/279\/revisions"}],"predecessor-version":[{"id":287,"href":"https:\/\/zechs.taipei\/index.php?rest_route=\/wp\/v2\/posts\/279\/revisions\/287"}],"wp:attachment":[{"href":"https:\/\/zechs.taipei\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=279"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zechs.taipei\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=279"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zechs.taipei\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=279"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}