0

IRobotNcrawlerのインターフェースを拡張して、ロボットフィルターを実装する正しい方法はどれですか?

私が見つけたいくつかのドキュメントでは、それは可能であると述べていますが、それを行う方法については述べていません。さらに、私はC#の初心者なので、コードの一部を理解していません。

特に、例にある次の部分では、新しいルールクラスを簡単に導入できますが、新しいロボットフィルターは導入できません。

// Register new implementation for ICrawlerRules using our custom class CustomCrawlerRules defined below
NCrawlerModule.Register(builder =>
        builder.Register((c, p) =>
            {
                NCrawlerModule.Setup(); // Return to standard setup
                return new CustomCrawlerRules(p.TypedAs<Crawler>(), c.Resolve<IRobot>(p), p.TypedAs<Uri>(),
                p.TypedAs<ICrawlerHistory>());
            }).
        As<ICrawlerRules>().
        InstancePerDependency());

RobotServiceクラスはどこかに「登録」されていますが、内部のどこにも設定されていませんCustomCrawlerRules。すべてのコードはここにあります。

4

1 に答える 1

1

独自のCustomRobotServiceNCrawlerModuleレジストリに登録してみてください。

コードは次のようになります。

builder.Register((c, p) => new CustomRobotService(p.TypedAs<Uri>(), c.Resolve<IWebDownloader>())).As<IRobot>().InstancePerDependency();
于 2012-12-27T23:21:14.043 に答える