Создание вебинара с использованием Citrix API в C#
Я хочу создать вебинар в GoToWebinar, используя Citrix API. У меня следующий код:
public class CreateWebinarTime
{
public DateTime StartTime { get; set; }
public DateTime EndTime { get; set; }
}
public class NewWebinar
{
public string subject { get; set; }
public string description { get; set; }
public List<CreateWebinarTime> Times { get; set; }
public string timeZone { get; set; }
}
string uri = @"https://api.citrixonline.com/G2W/rest/organizers/[ORGKEY]/webinars";
CreateWebinarTime t = new CreateWebinarTime();
t.StartTime = DateTime.Now.AddDays(2);
t.EndTime = t.StartTime.AddHours(2);
List<CreateWebinarTime> tempList = new List<CreateWebinarTime>();
tempList.Add(t);
var newWebinar = new NewWebinar
{
subject="Webinar Test",
description="This is a test webinar.. Will be deleted soon",
Times = tempList,
timeZone = "Asia/Calcutta"
};
JavaScriptSerializer ser = new JavaScriptSerializer();
string json = ser.Serialize(newWebinar);
WebClient client = new WebClient();
client.Headers = new WebHeaderCollection();
client.Headers.Add("Accept", "application/json");
client.Headers.Add("Content-type", "application/json");
client.Headers.Add("Authorization", string.Format("OAuth oauth_token={0}", OauthToken));
string resp = client.UploadString(uri, "POST", json);
Он показывает мне ошибку "Отсутствуют тема вебинара, время начала или окончания", хотя я передаю значение. Я уверен, что нет проблем с предметом, поэтому есть проблема со временем.
Создан json: {"subject":"Тест вебинара","description":"Это вебинар теста. Скоро будет удален","Times":[{"StartTime":"/Date(1424233883641)/","EndTime":"/ Дата (1424241083641)/"}],"TimeZone":"Азия /Calcutta"}
Пожалуйста, помогите мне исправить это.
1 ответ
Решение
Я решил это сам. Json чувствителен к регистру, и я ошибся там. Использовал "Times" вместо "times", "StartTime" вместо "startTime" и "EndTime" вместо "endTime"