2010-12-06 4 views
1

안녕하세요. 저는 Wordpress XML RPC를 사용하여 데이터베이스의 정보를 Wordpress로 푸시하는 작업 사이트를 개발 중입니다. 나는 정보를 잡아서 잘 게시 할 수 있지만 이미지를 업로드하는 시점에 이르면 작동하지 않는 것 같습니다 (WP 미디어 탭에서는 런타임 오류/이미지 없음). 그러나 깨진 이미지 링크를 업로드합니다. 그것은 어떻게 든 내 이미지에서 데이터를 얻지 못하는 것처럼 보입니다. 그리고 왜 여기에 내 코드가 있는지 확실하지 않습니다. 그 코드 후 WordPress XML RPC 이미지 업로드 C#

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)); 

이미지 정보는 내가 참고 변수 데이터의 형식

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

에서 함수에 전달로드 : 나는 또한 내 프로젝트

에 대한 http://joeblogs.codeplex.com/ 에서 DLL의의를 사용하고 있습니다

데이터 클래스는 다음과 같습니다

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

파일 업로드 기능은 다음과 같습니다 JoeBlogs 라이브러리에서

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

    } 
+0

여기에 행운이 있나요? – ariel

+0

본질적으로, 나는 이것을 수행 할 당시 JoeBlogs 코드베이스가 불완전했다. 파일보다는 MediaObjects를 사용하고 싶지만 내가 본 것. – h34dhun73r

+0

여기에 해결책을 참조하십시오. 이전 버전 일 수도 있지만 사용할 수 있어야합니다. [http://pixpuffindev.blogspot.com/2012/08/posting-to-wordpress-with-c-using.html](http:/) /pixpuffindev.blogspot.com/2012/08/posting-to-wordpress-with-c-using.html) – hreinn1000

답변

2

클래스 MetaWeblogWrapper 및 방법을 사용해보십시오 : MediaObjectInfo NewMediaObject(MediaObject mediaObject)을 - 업로드 이미지.