我想在SharePoin列表中只有唯一值。为实现这一点,我可以使用下面链接中提到的'ItemAdding'事件处理程序。
现在我有一个疑问:假设有两个用户尝试在列表中添加列表项,其列值相同(需要唯一值)同时。两个电话会同时触发ItemAdding事件吗?如果是这样,那么列中可能有两个具有相同值的项目。请确认。
答案 0 :(得分:1)
我认为,此方法只允许您在列中包含半唯一值。也就是说,如果一切正常,它将是独一无二的。但是,您无法比较同时添加的两个项目的属性(是的,它可能会发生,因为IIS Web服务器是多线程的)。因此,您可能会有重复的值。
变通方法 - 实现“ItemAdded”事件处理程序,并删除新添加的项目(如果它具有与其他现有项目相同的属性)。当然,这很少发生。
答案 1 :(得分:0)
如果您有足够的并发用户,这可能是一个问题,SharePoint可能不是适合该工作的工具。如果该值是由用户创建的,则两个用户极不可能同时添加相同的值。如果是自动生成的,您可能应该使用基于ID的内容,这已知是唯一的。
如果您担心重复的可能性,请确保如果您最终导致重复导致问题,则可以编辑该字段。