由於各種原因太過複雜以便在此解釋,我發現自己處於需要移除自定義代碼工作流程的位置,同時將解決方案留在那裏。以編程方式刪除自定義代碼工作流程
我基本上具有相同的代碼作爲插件登錄工具
即
service.Delete("plugintype", new Guid(info));
其中信息是工作流ID [上foreach循環運行,但是這樣的點旁邊]
然而,而該工具沒有任何問題地刪除工作流程,我的代碼抱怨依賴關係。
EM:
附加信息:PluginType(a0b2dcf7-CF2A-111E-7da9-003021880a42)成分不能因爲它是由其它1個部件引用刪除。有關引用組件的列表,請使用RetrieveDependenciesForDeleteRequest。
我正式做
RetrieveDependenciesForDeleteRequest req = new RetrieveDependenciesForDeleteRequest();
req.ComponentType = 90; //plugintype
req.ObjectId = new Guid(info);
RetrieveDependenciesForDeleteResponse resp = (RetrieveDependenciesForDeleteResponse)OrgService.Execute(req);
這檢索一個optionvalueset,但是有一點我可以用它做的是解決方案的管理,我不能從溶液中取出。
我能看到的唯一區別是OrganizationServiceProxy被實例化的方式。該插件註冊工具包括一種刷新安全令牌的方式,但據我所知它沒有太大的作用(我已經遍歷代碼,但有可能我錯過了某些內容)
我知道我無法從託管解決方案中刪除組件,但可以將它們從系統中刪除,這就是我正在做的。它不適用於工作流程,但適用於插件 – ManyRootsofAllEvil
而我的另一個問題是「您的工作流程是否觸發顯示爲依賴關係的OptionSet更改?」 –
我沒有檢查過,我沒有編寫工作流程,只是一些插件 – ManyRootsofAllEvil