[英]How to pass ViewModel to CodeActivity using WF4 with MVVM and WPF
我正在嘗試將當前的WPF / MVVM應用程序集成到Workflow Foundation 4.0。
目前,我的ViewModel方法之一是調用我的示例CodeActivity向其發送一些參數。
在CodeActivity execute方法的內部,我需要從調用ViewModel的方法中調用某些方法。 我想知道什么是最好的方法。 到目前為止,我已經確定了三種可能的方法:
到目前為止,我已經測試了選項2和3,它們顯然工作良好。
避免出現線程同步問題或其他問題的最佳方法是什么?
提前致謝,
編輯:僅提及一種可能的情況:如果用戶從視圖中的給定下拉列表中選擇值“ X”,則需要將對象childA和childB添加到由通過ViewModel中的公共屬性公開的ParentObject所包含的ObservableCollection中。 創建子對象並將其添加到父對象的邏輯在我的ViewModel中。 但是我希望工作流包含業務規則本身。
為什么您的CodeActivity
需要了解有關特定視圖模型的任何信息? 我會尋找另一種解決方案,以使您的活動盡可能保持獨立性。 我可以想到兩個選擇:
InArgument<IViewModel>
在不了解您的應用程序細節的情況下,我不知道哪個選項最有效(或根本不起作用),但是我會避免在給定的視圖模型和給定的CodeActivity
之間建立直接連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.