代码之家  ›  专栏  ›  技术社区  ›  HAdes

在SharePoint中,如何直接从电子邮件中的链接更新任务?

  •  1
  • HAdes  · 技术社区  · 14 年前

    我刚开始使用SharePointDesigner,我意识到在SharePoint中有很多可以扩展的基本功能。当(用户)创建新任务时,我们会发出一个电子邮件警报,我希望自定义该电子邮件,以便它还包含一个名为“分配”的链接。单击时,我希望此链接自动使用单击者的“分配给”字段更新任务。

    因此,我认为这样做的方法是对链接后面的URL中的赋值进行硬编码,但是我不知道这是否可行,或者是否有一种更简单/更好的方法。

    我是一个完全的初学者,任何建议都会受到感激。

    谢谢。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Ryan    14 年前

    我不会在这里讨论“如何修改eamil警报的内容”,因为这是一个单独的问题,并且已经有很多文章涉及到了这个问题。

    对于分配的链接:

    您需要创建一个自定义页面(或现有页面上的Web部件)作为分配链接的目标-这将把任务ID作为查询字符串参数,然后用当前用户更新分配给的。

    您也可以通过使用listid来灵活实现这一点,但您可能需要考虑如何滥用它,并采取适当的措施。

    编辑-回应评论。

    这是我的头,不是签入编译器。它必须与SharePoint位于同一个服务器上,才能使用OM工作-如果您想使用不同的服务器(为什么要这样做),请查看Web服务。

    private void updateAssignedTo(Guid listId, int itemID)
    {
       SPWeb web = SPContent.Current.Web();
       SPList list = web.Lists[listId];
       SPListItem item = list.GetItemById(itemID);
       item["Assigned To"] = web.CurrentUser;
       item.Update();
    }
    

    您将不得不解决如何将此代码放入页面或Web部件(我认为SharePoint Designer不会剪切它,您需要Visual Studio),但它是一个起点。