So after scouring the Internet I pieced together the following code to upload a photo for a Google Contact:
System.Drawing.Bitmap Image = new Bitmap( @"C:\test.jpg" );
System.IO.MemoryStream Memory = new MemoryStream();
Image.Save( Memory, System.Drawing.Imaging.ImageFormat.Jpeg );
Service.Update
(
Contact.PhotoEditUri,
Memory,
"image/jpeg",
null
);
The Service is using ClientLogin authentication. Before this code runs, I have successfully retrieved the contact.
After this code runs, however, I get a GDataRequestException. The error message returned is, "A temporary internal problem has occurred. Try again later". The error message in the InnerException contains the following, "The remote server returned an error: (500) Internal Server Error."
After yet more research, I found hints that the error codes from the Google service may not be all that descriptive - and may simply return error 500. Though I don't know how true this is.
So maybe the problem is with my code? Or even better, does anybody have sample code to demonstrate how this should be done?
Thanks,
Camel