Microsoft graph api Outlook日历事件id';在租户中是唯一的吗?

Microsoft graph api Outlook日历事件id';在租户中是唯一的吗?,microsoft-graph-api,azure-ad-graph-api,microsoft-graph-calendar,outlook-calendar,outlook-api,Microsoft Graph Api,Azure Ad Graph Api,Microsoft Graph Calendar,Outlook Calendar,Outlook Api,我正在一个数据库中存储多个租户日历事件数据。如果日历事件id在租户中是唯一的,我将使用它作为主键来存储唯一的事件 使用 提前感谢..我的建议是最好使用其他键作为主键,如时间戳20210122125959333 根据你的问题,我在谷歌上搜索了帮助,基于,似乎会有2个相同的事件id。但是基于,似乎事件id是唯一的 所以我做了一些测试。我使用创建事件api来创建日历事件,并使用相同的参数来测试它是否会显示相同的id,下面是我的结论 首先,如果我在中使用示例参数(我的url是:),在多次执行api后,它

我正在一个数据库中存储多个租户日历事件数据。如果日历事件id在租户中是唯一的,我将使用它作为主键来存储唯一的事件

使用


提前感谢..

我的建议是最好使用其他键作为主键,如时间戳20210122125959333

根据你的问题,我在谷歌上搜索了帮助,基于,似乎会有2个相同的事件id。但是基于,似乎事件id是唯一的

所以我做了一些测试。我使用创建事件api来创建日历事件,并使用相同的参数来测试它是否会显示相同的id,下面是我的结论

首先,如果我在中使用示例参数(我的url是:),在多次执行api后,它将始终返回类似的响应,但事件ID相同(您可以在屏幕截图中看到详细信息),但是当我通过api查询事件时,我只能得到一个事件

然后我将“transactionId”设置为“”,并在参数json中更改事件的主题(因为当我只更改subject的值时,它将返回一个错误,说明我不能使用相同的transactionId),在执行多次后,即使使用相同的参数,我也可以获得不同的事件ID


因此,我的建议是,您不应该使用事件id作为主键,除非您的系统不关心上面提到的返回相同id的操作,并准备设置良好的验证以避免出现相同的事件id。

从Exchange/Outlook角度(而不是SQL方面)进行讨论。。。考虑一个场景,事件从一个邮箱存储移动到另一个邮箱存储,然后Outlook/Exchange可能会重新计算您正在使用的所有ID,因此旧值可能会丢失,它们可能具有最新的值。为了克服这个问题,我的建议是创建一个自定义MAPI属性戳,并根据需要使用它。