Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在工作流中使用向词典添加新值_C#_Collections_Dictionary_Workflow - Fatal编程技术网

C# 在工作流中使用向词典添加新值

C# 在工作流中使用向词典添加新值,c#,collections,dictionary,workflow,C#,Collections,Dictionary,Workflow,我需要在工作流中为我的词典添加一个新值。Assign活动抱怨dictionary的Add方法没有返回任何值 我该怎么办 Visual Studio 2012 工作流设计器 更新: 没有密码。这取决于设计师。我尝试分配活动,但它会检查值部分是否返回某些内容。所以这成了一个相当普遍的问题。我有一个复杂的工作流程,在其中,我需要跟踪系统采集的音频样本,并将其标记为无效。我需要稍后处理此集合。现在,我也可以使用数组,但问题仍然是:如何在工作流设计器上调用Collection.Add()方法,该方法不返回

我需要在工作流中为我的
词典
添加一个新值。Assign活动抱怨dictionary的Add方法没有返回任何值

我该怎么办

Visual Studio 2012 工作流设计器

更新:


没有密码。这取决于设计师。我尝试分配活动,但它会检查值部分是否返回某些内容。所以这成了一个相当普遍的问题。我有一个复杂的工作流程,在其中,我需要跟踪系统采集的音频样本,并将其标记为无效。我需要稍后处理此集合。现在,我也可以使用数组,但问题仍然是:如何在工作流设计器上调用Collection.Add()方法,该方法不返回任何内容。

好的。我使用了一个定制的工作流设计器,在浏览了提供的基本活动后,我发现有四个专门处理集合:
AddToCollection
RemoveFromCollection
ClearCollection
,以及
ExistsInCollection


我相信这些会解决我的问题。现在就开始尝试。

我一直在寻找这个问题的答案,实际上我正准备重新发布这个问题,希望能有所改进,但最终我自己找到了答案@Hassan Gulzar如果你也是这样想的,请将此标记为答案

我最终发现了一种方法,将单个值作为工作流设计器中AddToCollection工具的参数传递给字典集合。由于Dictionary类实现ICollection接口,因此它可以将KeyValuePair的单个值带入其Add()方法。因此,在字典中使用AddToCollection工具的方法是为该工具的参数创建一个新的KeyValuePair(我的可能看起来有点不同,因为我必须在工作流中使用VB.net):


希望这对别人有帮助

您可能正在做类似于
var a=dictionary.Add(一些,事情)的事情
不起作用,因为
Dictionary.Add()
不会返回任何内容。发布有问题的代码?@Hassanglzar-您仍然没有发布有问题的代码。甚至设计者也会生成代码。一定是有代码导致了这个错误。这个问题有这么多的反对票是因为OP没有帮助还是因为它是一个糟糕的问题?@BrDaHa,我自己也不明白。这个问题是完整而恰当的,因为我对这个问题并不陌生。这并不坏,也没有什么帮助。那些理解的人也回答了。我通过寻找相关的活动序列来解决这个问题。没有密码。它的全部都是设计器。而集合类型的活动确实解决了这个问题。自定义工作流设计器仅加载基本MS活动。我必须让它加载集合类型的活动,并且我能够管理我的集合。