I noticed some strange behavior when requesting filter streams. Streams with a larger number of filter values (>20) result in an ArgumentException in TwitterExecute.GetBasicStreamRequest on line 655 due to duplicate requestparameters that can not be converted
to a dictionary.
This description applies to WinRt and the ffbabcf9f7d3 commit.
I do a stream request like this:
stream = (from strm in twitterCtx.Streaming
where strm.Type == StreamingType.Filter &&
strm.Track == filter
// stream callback handling
When stepping through the code I found that the request will always have it's requestparameters duplicated. This is the call sequence resulting in the duplication:
extracts a dictionary of postdata from request and calls OAuthAuthorizer.PostRequest with the request and postdata
adds a dictionary of postdata to the request as requestparameters resulting in duplicate requestparameters
With longer filter values TwitterExecute.GetBasicStreamRequest is called a second time resulting in the mentioned exception.