1

我是 Windows 开发的新手。我尝试了很多将图像上传到服务器,但我无法这样做。

如果有人可以帮助我,请在下面查看我的代码

void uploadphoto()
{
    WebClient webClient1 = new WebClient();
        webClient1.DownloadStringCompleted += new DownloadStringCompletedEventHandler(webClient1_DownloadStringCompleted);
    webClient1.DownloadStringAsync(new Uri("Web Service"));
}

void webClient1_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
        var rootobject1 = JsonConvert.DeserializeObject<RootObject1>(e.Result);
    int error = rootobject1.response.errorFlag;
        string message = rootobject1.response.msg;
    if (error == 0)
            {
                    MessageBox.Show(message);
            }
        else
            {
                    MessageBox.Show(message);
            }
}

public class Response1
{
        public int errorFlag { get; set; }
        public string msg { get; set; }
        public List<string> uploadedImageNames { get; set; }
}

public class RootObject1
{
        public Response1 response { get; set; }
}

我正在使用下面的代码来选择图像:

private void ImageUpload(object sender, RoutedEventArgs e)
    {
        //MessageBoxResult mb = MessageBox.Show("Select the mode of uploading the picture", "", MessageBoxButton.OKCancel);
        Popup popup = new Popup();
        photoSelection photo = new photoSelection();
        popup.Child = photo;
        popup.IsOpen = true;
        photo.camera.Click += (s, args) =>
            {
                photoCameraCapture.Show();
                popup.IsOpen = false;
            };
        photo.library.Click += (s, args) =>
            {
                photoChooserTask.Show();
                popup.IsOpen = false;
            };
}

我正在使用这些代码为 Windows Phone 8 开发应用程序。我正在使用 Json.Net。请帮帮我。提前谢谢。

编辑

private void photoChooserTask_Completed(object sender, PhotoResult e)
    {
        BitmapImage image = new BitmapImage();
        image.SetSource(e.ChosenPhoto);
        this.imageTribute.Source = image;
        byte[] bytearray = null;
        using (MemoryStream ms = new MemoryStream())
        {

            if (imageTribute.Source == null)
            {

            }
            else
            {
                WriteableBitmap wbitmp = new WriteableBitmap((BitmapImage)imageTribute.Source);

                wbitmp.SaveJpeg(ms, 40, 40, 0, 82);
                bytearray = ms.ToArray();
            }
        }
        strimage = Convert.ToBase64String(bytearray);
    }

我正在使用此代码选择并转换为 base64,然后将其传递给 Web 服务。

4

0 回答 0