[英]Unable to host an NServiceBus Saga from another Service with SQL Persistence
我正在嘗試使用帶有SqlPersistence
和SqlDialect.MsSqlServer
NServiceBus 6在另一個項目中的一個項目中承載Saga。 在我發現的大多數示例中,Saga與托管應用程序都包含在同一程序集中,也許這就是我在努力的原因。
在同一應用程序中托管所有內容時, NServiceBus.Persistence.Sql.MsBuild
包在構建過程中正確輸出Saga .sql
文件,然后將其提取並在運行時執行它們。 使用單獨的應用程序,僅生成Outbox
, Subscription
和Timeout
.sql
文件,而不生成Saga文件。 然后在運行時登錄以下條目:
INFO NServiceBus.Persistence.Sql.Installer目錄'[PATH] \\ SagaPersistence \\ Service \\ bin \\ Debug \\ NServiceBus.Persistence.Sql \\ MsSqlServer \\ Sagas'未找到,因此將不執行saga創建腳本。
完整的VS 2017 repro可以在https://github.com/WolfyUK/NServiceBusSagaSqlPersistence找到。
首先,從另一個服務托管Sagas而不是自我托管是一個壞主意嗎? 如果沒有,有人可以建議解決SQL Persistence問題的最佳方法嗎?
可以將NServiceBus.Persistence.Sql.MsBuild
添加到Saga
項目嗎? 然后應在此處找到腳本。 不幸的是,它們沒有被復制到主機的文件夾中,因此您必須將它們從那里帶入生產環境。 或者像您已經在使用EnableInstallers
生成它們一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.