0

サイト コレクションに 2 つの SharePoint リストがあります。1 つの「コメント」リストと 1 つの「フィルター」リストです。フィルター リストの項目を使用して、コメント リストの項目をフィルター処理して置換したいと思います。たとえば、コメント リストの 1 つの項目が追加されようとしています。 "フィルター" リストの " エントリで、リスト アイテムが追加されたら、結果を "Lorem Ipsum * "にしたいと考えています。Visual Studio でイベント レシーバーを使用してこれを行うにはどうすればよいですか?

SP13とVS2012を使用しています。

ありがとう!

これが私がこれまでに持っているものです:

        public override void ItemAdded(SPItemEventProperties properties)
    {
        using (SPSite site = new SPSite(SPContext.Current.Site.Url))
        {
            string comment = "";
            string filter = "";

            using (SPWeb oWebSiteRoot = SPContext.Current.Site.RootWeb)
            {
                SPList commentsList = oWebSiteRoot.Lists["Comments"];
                SPListItemCollection commentItems = commentsList.Items;

                SPList filterList = oWebSiteRoot.Lists["Filter"];
                SPListItemCollection filterItems = filterList.Items;



                foreach (SPListItem item in commentItems)
                {
                    comment = item.ToString();

                    foreach (SPListItem item2 in filterItems)
                    {
                        filter = item2.ToString();

                        if (comment.Contains(filter))
                        {
                            string replace = "*******";
                            replace = item.ToString();

                        }

                    }

                }


            }

        }


        base.ItemAdded(properties);
    }
4

1 に答える 1

0
   SPWeb web = properties.OpenWeb()

   DisableEventFiring();
   string commentItem = properties.AfterProperties["ColumnName"].ToString();

   foreach (SPListItem item in filterItem)
            {
                comment = item.ToString();                  

                    if (item.Contains(commentItem))
                    {
                        properties.ListItem["ColumnName"] = "Lorem Ipsum *"; 
                        properties.ListItem.Update();

                    }



            }

*エラーが発生する可能性があります。これをロジックとして使用してください...完全にはテストしていません

*「Properties」を使用して、イベント レシーバーで「Using(){}」句を使用しないでください

于 2014-08-13T12:08:37.393 に答える