---
title: "どのデータベースが公開イベントを発生させたかを特定する"
slug: "identify-which-database-raised-a-publish-event"
abstract: "どのデータベースがpublish:endまたはpublish:end:remoteイベントを引き起こしたかを特定します。"
---
# どのデータベースが公開イベントを発生させたかを特定する

どのデータベースがpublish:endやpublish:end:remoteイベントを発生させたかを知ることは、例えばリモートSitecore CDインスタンスでキャッシュを更新したい場合に非常に役立ちます。

publish:endイベントを引き起こしたデータベースを特定するには、以下のコードを実行してください:

Public void OnPublishEnd(object sender, EventArgs args)
        {
            var Publisher publisher =
Sitecore.Events.Event.ExtractParameter<Publisher>(args,
0) as Publisher;
            var db = publisher.Options.TargetDatabase.Name;
        }

publish:end:remoteイベントを引き起こしたデータベースを特定するには、以下のコードを実行してください:

Public void OnPublishEndRemote(object sender, EventArgs args)
        {
            var publishEndArgs = args as Sitecore.Data.Events.PublishEndRemoteEventArgs;
            var dbs =
Sitecore.Configuration.Factory.GetDatabases().Where(db =>
db.RemoteEvents.EventQueue.Name == publishEndArgs.EventQueueName);
        }