【问题标题】:Only allow one entry per User in a List - ListReceiver "Feature" for a List?列表中每个用户只允许一个条目 - 列表的 ListReceiver“功能”?
【发布时间】:2010-09-20 03:42:06
【问题描述】:

不知道有没有办法在Sharepoint中创建自定义列表,但是指定每个用户只能在列表中创建一个项目。

我正在考虑两种方法:

  • 开发一个 ListReceiver 来检查用户是否已经创建了一个项目。问题:我没有看到在特定列表上启用功能的方法(想法是非开发人员可以创建一个自定义列表并根据需要“打开”该功能
  • 创建自定义列表类型,因此当人们单击“创建”按钮时,他们会在“自定义列表”下看到“自定义唯一列表”作为附加类型。

在我做第二个选项之前,有谁知道第一个选项是否可行?或者即使它已经可以在没有自定义开发的情况下完成(并且没有 SPDesigner 中的自定义工作流程)

【问题讨论】:

    标签: c# sharepoint


    【解决方案1】:

    如果没有自定义代码,您将不走运。您可以使用代码轻松地将接收器添加到单个列表中,只需将接收器添加到 SPListItem.EventReceivers 集合中:

    list.EventReceivers.Add(SPEventReceiverType.ItemAdded, "YOUR STRONG NAME", "YOUR CLASS NAME");

    但是,没有办法直接通过特征元素文件。

    如果您想要启用或禁用特定列表上的功能的选项,您还可以添加 CustomAction 并将其绑定到该特定列表模板,例如,以便额外的操作菜单项允许启用或禁用唯一帖子。

    .b

    【讨论】:

    • 自定义列表操作,完全忘记了它们。启用/禁用 EventReceiver 的自定义操作听起来是最好的解决方案。谢谢!
    猜你喜欢
    • 2015-04-15
    • 2012-05-28
    • 2017-04-25
    • 2012-08-25
    • 2012-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多