2013-02-19 5 views
3

을 추가 Tridion UGC 웹 서비스를 사용 : -등급 나는 다음과 같은 것을 사용하여 UGC 웹 서비스를 통해 주석을 추가 할 수 있습니다 알고

WebServiceClient ugcCall = new WebServiceClient(); 

string ugcData = "{ \"d\" :{\"Content\":\"" + comment + "\",\"Status\":2,\"ItemPublicationId\":\"" + PublicationId + "\",\"ItemId\":\"" + itemid + "\",\"ItemType\":\"16\",\"Id\":0,\"ModeratedDate\":\"\",\"LastModifiedDate\":\"\",\"CreationDate\":\"\",\"Score\":0,\"Moderator\":\"\",\"User\":{\"Id\":\"ACME%5Cjbloggs\",\"Name\":\"Joe Bloggs\"}}}"; 

string result = ugcCall.UploadString("/Comments", "POST", ugcData); 

내 질문 등급 및 취향을 추가하는 구문은 무엇인가 싫어요? 어디에서 문서화되어 있습니까?

MTIA

존 업로드 등급에 대한

답변

5

명령은 '/ 등급'대신 '/ 댓글'의. 물론 JSON도 다릅니다. 아래의 코드에서, 나는 수동으로 JSON을 쓰지 않는 대신 나는 간단한 평가 객체를 생성하고 JSON으로 변환하기 위해 JavascriptSerializer를 사용하십시오 WebServiceClient이 아니라고

TcmUri tcmUri = new TcmUri(itemUri); 
WSR_ContentDelivery.User user = new WSR_ContentDelivery.User { Id = GetUserId() }; 
WSR_ContentDelivery.Rating rating = new WSR_ContentDelivery.Rating 
{ 
    CreationDate = DateTime.UtcNow, 
    LastModifiedDate = DateTime.UtcNow, 
    ItemPublicationId = tcmUri.PublicationId, 
    ItemId = tcmUri.ItemId, 
    ItemType = tcmUri.ItemTypeId, 
    RatingValue = ratingValue.ToString(), 
    User = user, 
    Id = "0" 
}; 

JavaScriptSerializer oSerializer = new JavaScriptSerializer(); 

WSClient.UploadString("/Ratings", "POST", "{d:" + oSerializer.Serialize(rating) + "}", GetUserId()); 
+1

는 사실을 추가 것이 좋을 것이다 UGC의 공개 API이며 향후 변경 될 수 있습니다. –

+0

예제 Quirijn에 감사드립니다! – John

+0

감사합니다. Daniel. 이것에 대한 자세한 정보가 있습니까? 공개 할 계획이 있습니까? 가까운 시일 내에 변경 될 가능성이 있는지 아십니까? – John