C# 通过Microsoft Graph API创建主类别
我正试图通过outlook事件创建一个新类别。以下是我到目前为止的情况C# 通过Microsoft Graph API创建主类别,c#,api,outlook,microsoft-graph-api,C#,Api,Outlook,Microsoft Graph Api,我正试图通过outlook事件创建一个新类别。以下是我到目前为止的情况 using (var client = new HttpClient()) { client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AdviserBearerToken); client.DefaultRequestH
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", AdviserBearerToken);
client.DefaultRequestHeaders.Accep.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var categoryName = new List<string>();
categoryName.Add("New Event");
var startTime = new Time();
var endTime = new Time();
startTime.DateTime = "2016-07-15T15:00:00.0000000";
startTime.TimeZone = "UTC";
endTime.DateTime = "2016-07-15T15:30:00.0000000";
endTime.TimeZone = "UTC";
var eventModel = new EventModelForGraph
{
categories = categoryName,
subject = "This is an event",
Start = startTime,
End = endTime
};
var serializedObject = JsonConvert.SerializeObject(eventModel);
var createBody = new StringContent(serializedObject, System.Text.Encoding.UTF8, "application/json");
var response = await client.PostAsync("https://graph.microsoft.com/v1.0/me/calendar/events", createBody);
var responseString = await response.Content.ReadAsStringAsync();
}
使用(var-client=new-HttpClient())
{
client.DefaultRequestHeaders.Authorization=新的AuthenticationHeaderValue(“承载人”,advisorBeaerToken);
client.DefaultRequestHeaders.Accep.Add(新的MediaTypeWithQualityHeaderValue(“应用程序/json”);
var categoryName=新列表();
categoryName.Add(“新事件”);
var startTime=新时间();
var endTime=新时间();
startTime.DateTime=“2016-07-15T15:00:00.0000000”;
startTime.TimeZone=“UTC”;
endTime.DateTime=“2016-07-15T15:30:00.0000000”;
endTime.TimeZone=“UTC”;
var eventModel=新的eventmodelfraph
{
类别=类别名称,
subject=“这是一个事件”,
开始=开始时间,
结束=结束时间
};
var serializedObject=JsonConvert.SerializeObject(eventModel);
var createBody=newstringcontent(serializedObject,System.Text.Encoding.UTF8,“application/json”);
var response=wait client.PostAsync(“https://graph.microsoft.com/v1.0/me/calendar/events“,createBody);
var responseString=await response.Content.ReadAsStringAsync();
}
该事件显示在日历中,类别作为标题,但它没有列在分类选项卡下,这会导致我的问题。
是否可以使用API创建此类类别?否,您不能通过REST API将类别添加到主类别列表中。您不能通过任何API直接添加它们 但是,如果愿意直接操作XML,可以修改列表。血淋淋的细节记录在。例如,您可以使用EWS访问配置项
这将是添加到RESTAPI的一个很好的特性。您应该建议使用它。否,您不能通过REST API将类别添加到主类别列表中。您不能通过任何API直接添加它们 但是,如果愿意直接操作XML,可以修改列表。血淋淋的细节记录在。例如,您可以使用EWS访问配置项
这将是添加到RESTAPI的一个很好的特性。你应该提出建议。我知道这是一个老问题,但我也在研究同样的问题,我想我会发布一个更新。这在当前版本的Graph API中是可能的。您可以从MSDN中查看文档。您可以通过发送
POST
API请求来创建类别:
POST https://graph.microsoft.com/beta/me/outlook/masterCategories
Content-type: application/json
Content-Length: 70
{
"displayName":"Project expenses",
"color":"preset9"
}
创建类别后,通过将类别的displayName
属性添加到项目的categories
集合,可以在创建事件时分配类别
您可以找到有关何时添加这些API端点的更多详细信息以及有关类别的更多详细信息。我知道这是一个较老的问题,但我正在研究同样的问题,并认为我应该发布更新。这在当前版本的Graph API中是可能的。您可以从MSDN中查看文档。您可以通过发送
POST
API请求来创建类别:
POST https://graph.microsoft.com/beta/me/outlook/masterCategories
Content-type: application/json
Content-Length: 70
{
"displayName":"Project expenses",
"color":"preset9"
}
创建类别后,通过将类别的displayName
属性添加到项目的categories
集合,可以在创建事件时分配类别
您可以找到有关何时添加这些API端点的更多详细信息以及有关类别的更多详细信息