First i would see if your values.ToString() is actually giving a proper value, my guess is firstly values.ToString() on a dictionary object will just return the class name (Dictionary<string, string>).
I would try a NameValueCollection object instead.
https://stackoverflow.com/questions/14702902/post-form-data-using-httpwebrequest
Can you verify the text of the post data and put it here?