【发布时间】:2017-04-04 18:35:56
【问题描述】:
我正在使用这个 sn-p 创建一个日历并将其放入用户的本机 Outlook 日历应用程序中:
async private Task CreateCalenderEntry()
{
// 1. get access to appointmentstore
var appointmentStore = await AppointmentManager.RequestStoreAsync(AppointmentStoreAccessType.AppCalendarsReadWrite);
// 2. get calendar
var appCustomApptCalendar = await appointmentStore.CreateAppointmentCalendarAsync("MyCalendar1");
// 3. create new Appointment
var appo = new Appointment();
// appointment properties
appo.AllDay = true;
appo.Subject = "Sample Subject";
appo.StartTime = DateTime.Now;
// 4. add
await appCustomApptCalendar.SaveAppointmentAsync(appo);
}
问题是,当我调用此代码时,它会在 Outlook 日历中创建一个新的日历部分,其中包含一个名为“MyCalendar1”的日历,但我想要的是在用户帐户的日历中创建它。我能看到的是
CreateAppointmentCalendarAsync
实际上有 1 个重载
public IAsyncOperation<AppointmentCalendar> CreateAppointmentCalendarAsync(System.String name, System.String userDataAccountId);
我认为这是我正在寻找解决用户日历的问题,但考虑到这个“userDataAccountId”参数是用户的 ID,我应该在哪里找到它?
【问题讨论】:
-
您需要特殊功能才能将约会添加到用户日历。但如果您使用此功能,App 将无法通过认证。请参阅有关此here 的文档。寻找系统级预约访问
-
“系统级预约访问”和“用户数据帐户提供者”有什么区别?第一个说“没有人可以请求访问此功能以进行商店提交。”并且 UDAP 说“任何人都可以请求访问此功能以进行商店提交。”?毕竟我和我的公司需要将这个应用程序发布到商店(也有充分的理由要求这些功能,所以我认为这不会成为问题)
标签: c# xaml windows-phone uwp windows-10