WordPress XML RPC Загрузить изображение C # - PullRequest
1 голос
/ 06 декабря 2010

Привет всем, я разрабатываю сайт для работы, которая будет передавать информацию из базы данных в Wordpress с помощью Wordpress XML RPC. Я могу получить информацию и опубликовать ее очень хорошо, однако, когда я начинаю загружать изображения, они, кажется, работают (без ошибок времени выполнения / изображения на вкладке WP Media), однако он загружает неработающую ссылку на изображение. Похоже, что как-то не получается получить данные из моего изображения, и я не уверен, почему здесь есть часть моего кода.

MemoryStream ms = new MemoryStream();
    System.Drawing.Image img = System.Drawing.Image.FromFile(HttpContext.Current.Server.MapPath("_Images/DownloadButton-PSD.png"));
    img.Save(ms, ImageFormat.Png);
    byte[] imagebytes = new byte[ms.Length];
    ms.Position = 0;
    ms.Read(imagebytes, 0, Convert.ToInt32(ms.Length));

после того, как этот код загружает информацию об изображении, я передаю ее функции в формате переменной Data

var data = new Data
    {
     Base64 = Convert.ToBase64String(imagebytes),
     Name = "DownloadButton-PSD.png",
     Type = "image/png",
     Overwrite = false,
    };
    _wpWrapper.UploadFile(data);

К вашему сведению: я также использую DLL из http://joeblogs.codeplex.com/ для моего проекта

Класс данных выглядит следующим образом:

public class Data
{
    public string Name { get; set; }
    public string Type { get; set; }
    public string Base64 { get; set; }
    public bool Overwrite { get; set; }
}

Функция загрузки файла выглядит следующим образом:

public void UploadFile(Data data)
    {
        var xmlRpcData = Map.From.Data(data);
        var result = _wrapper.UploadFile(this.BlogID, Username, Password, xmlRpcData);

    }

1 Ответ

2 голосов
/ 28 марта 2012

В библиотеке JoeBlogs попробуйте использовать класс MetaWeblogWrapper и метод: MediaObjectInfo NewMediaObject(MediaObject mediaObject) - для загрузки изображения.

...