1

我在 RavenDB Put Trigger 上搜索了高低。但是,我找不到可以完成任务的来源。这是我存储在 Ravendb 的插件文件夹中的小 dll 代码 - 我使用的是 build 960。我的问题是,我该如何从这里开始。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Raven.Database.Plugins;
using System.Collections.Concurrent;
using Raven.Json.Linq;
using Raven.Abstractions.Data;
using System.Diagnostics;

namespace Raven.Tryouts
{
public class MyPutTrigger : AbstractPutTrigger
{
public override void OnPut(string key, Json.Linq.RavenJObject document,       Json.Linq.RavenJObject metadata, Abstractions.Data.TransactionInformation transactionInformation)
    {
        base.OnPut(key, document, metadata, transactionInformation);
        Debug.WriteLine("OnPut: " + key);
    }
    public override void AfterPut(string key, Json.Linq.RavenJObject document, Json.Linq.RavenJObject metadata, Guid etag, Abstractions.Data.TransactionInformation transactionInformation)
    {
        base.AfterPut(key, document, metadata, etag, transactionInformation);
        Debug.WriteLine("AfterPut:" + key);
    }
    public override void AfterCommit(string key, Json.Linq.RavenJObject document, Json.Linq.RavenJObject metadata, Guid etag)
    {
        base.AfterCommit(key, document, metadata, etag);
        Debug.WriteLine("AfterCommit:" + key);
    }
}
}
4

2 回答 2

0

Debug.WriteLine 不会写入 RavenDB 调试日志。在运行 Raven 的服务器上启动 Sysinternals DebugView 以查看系统调试输出 - 您将看到示例触发器的诊断输出。

于 2012-09-19T08:43:14.457 回答
0
  • 编译这段代码。
  • 获取生成的 dll 并将其放置在 Plugins 目录中(在 .config 文件旁边)。如有必要,创建插件目录。
  • 重启乌鸦
于 2012-09-01T15:31:05.807 回答