コード例 #1
0
ファイル: ReadingJournal.cs プロジェクト: xychb/n2cms
		public void Register(int referencedItemID, Action<ContentItem> action, bool isChild = false, string relationType = null, ContentItem referencingItem = null)
        {
			var resolver = new UnresolvedLink(referencedItemID, action) { IsChild = isChild, RelationType = relationType, ReferencingItem = referencingItem };
            UnresolvedLinks.Add(resolver);
            EventHandler<ItemEventArgs> handler = null;
            handler = delegate(object sender, ItemEventArgs e)
                {
                    if (e.AffectedItem.ID == referencedItemID || e.AffectedItem.VersionOf.ID == referencedItemID)
                    {
                        resolver.Setter(e.AffectedItem);
                        UnresolvedLinks.Remove(resolver);
                        ItemAdded -= handler;
                    }
                };

            ItemAdded += handler;
        }
コード例 #2
0
ファイル: ReadingJournal.cs プロジェクト: xychb/n2cms
        public void Register(string versionKey, Action<ContentItem> action, bool isChild = false)
        {
            var resolver = new UnresolvedLink(versionKey, action) { IsChild = isChild };
            UnresolvedLinks.Add(resolver);
            EventHandler<ItemEventArgs> handler = null;
            handler = delegate(object sender, ItemEventArgs e)
            {
                if (e.AffectedItem.GetVersionKey() == versionKey)
                {
                    resolver.Setter(e.AffectedItem);
                    UnresolvedLinks.Remove(resolver);
                    ItemAdded -= handler;
                }
            };

            ItemAdded += handler;
        }
コード例 #3
0
ファイル: ReadingJournal.cs プロジェクト: nicklv/n2cms
        public void Register(string versionKey, Action<ContentItem> action, bool isChild = false)
        {
            var resolver = new UnresolvedLink(versionKey, action) { IsChild = isChild };
            UnresolvedLinks.Add(resolver);
            EventHandler<ItemEventArgs> handler = null;
            handler = delegate(object sender, ItemEventArgs e)
            {
                if (e.AffectedItem.GetVersionKey() == versionKey)
                {
                    resolver.Setter(e.AffectedItem);
                    UnresolvedLinks.Remove(resolver);
                    ItemAdded -= handler;
                }
            };

            ItemAdded += handler;
        }
コード例 #4
0
ファイル: ReadingJournal.cs プロジェクト: nicklv/n2cms
		public void Register(int referencedItemID, Action<ContentItem> action, bool isChild = false, string relationType = null, ContentItem referencingItem = null)
        {
			var resolver = new UnresolvedLink(referencedItemID, action) { IsChild = isChild, RelationType = relationType, ReferencingItem = referencingItem };
            UnresolvedLinks.Add(resolver);
            EventHandler<ItemEventArgs> handler = null;
            handler = delegate(object sender, ItemEventArgs e)
                {
                    if (e.AffectedItem.ID == referencedItemID || e.AffectedItem.VersionOf.ID == referencedItemID)
                    {
                        resolver.Setter(e.AffectedItem);
                        UnresolvedLinks.Remove(resolver);
                        ItemAdded -= handler;
                    }
                };

            ItemAdded += handler;
        }