概述:本示例演示了在WPF應用程式中實現多語言支持的詳細步驟。通過資源字典和數據綁定,以及使用語言管理器類,應用程式能夠在運行時動態切換語言。這種方法使得多語言支持更加靈活,便於維護,同時提供清晰的代碼結構。 在WPF中實現多語言的一種常見方法是使用資源字典和數據綁定。以下是一個詳細的步驟和示例源代 ...
輕鬆使用aspire rabbitmq
創作初衷
aspire 是微軟基金會推出的新一代雲原生編排框架,具體請看 https://learn.microsoft.com/en-us/dotnet/aspire/get-started/aspire-overview
我從preview1 - preview6(目前最新 2024/5/1) 一直都有使用,在第一版的時候我就用它放入了我的一個微服務中(https://gitee.com/SkyNingDuan/PublicActivityServices.git),一直和它迭代.
在其中我一直使用外部rabbitmq的方式給我的微服務傳遞消息(用的是YZK.eventbus),但是它一直有直接通過aspire方式創建rabbitmq 容器在你的項目中使用,我一直想著用楊中科老師的框架為指導,開發一個在aspire環境下的eventbus,但是一直拖著(已經有現成的了,就一直不想走出舒適區)最後經過不斷的自我抗爭,simpleUseAspireRabbitmq第一版開發好了,功能比較簡單,也比較簡單好用,如果大家熱情高的話。後面再加便是。歡迎大家擁抱新技術,有任何問題都可以提issue和我互動,源代碼地址https://github.com/skyDuanXianBing/SimpleUseAspireRabbitMQ.git ,nuget名稱:SimpleUseAspireRabbitMQ (目前由於aspire 也是處於預覽版,所以這個也是預覽版,後面有任何改進也會跟進的)
下麵是使用教程
1,創建你的aspire項目,在aspire.host中安裝Aspire.Hosting.RabbitMQ 包,在program.cs中創建rabbitmq容器,並且 在你要使用rabbitmq的項目後 withreference rabbitmq容器
2,在你要使用rabbitmq項目的program.cs中分別加入builder.EventConfiguration("rabbitmq", "myexchange");(第一個參數是rabbitmq容器名稱,第二是交換機名稱)app.RegisterRabbitmqEvent();來註冊服務
3,使用ieventbus發送消息 目前僅支持 string/泛型 數據(都會轉換成json,後面在反序列化)
publish第一個參數是隊列名稱
4,定義處理類,一定要定義在網站項目中(因為是通過反射網站項目拿到全部的處理類)繼承IEventJsonHandler
一定要在處理類上貼 [event("")] 這個attribute 用來指示接收哪個隊列信息
5,完美接收消息