我有一个我想在post / get中访问的XML文件。每次我按照特定应用程序点击post / get路径时,我都不想加载它。我想我应该加载一个对象来存储我的数据一次在bootstrapper中并根据我的需要引用它,但是找不到任何具体的例子 - 如何实现这个?
答案 0 :(得分:6)
您可以阅读XML文件并将结果粘贴到应用程序启动期间在容器中注册的某个对象中。然后,您的模块可以注入该对象。
那是;你的引导程序中有这样的东西:
public class Bootstrapper : DefaultNancyBootstrapper
{
protected override void ApplicationStartup(TinyIoCContainer container, IPipelines pipelines)
{
base.ApplicationStartup(container, pipelines);
var myXmlCacheInstance = ... // read your xml file and create an object to hold it
container.Register<MyXmlCahce>(myXmlCacheInstance);
}
}
并在您的模块中这样:
public class HomeModule : NancyModule
{
public HomeModule(MyXmlCache xmlCache)
{
Get["/"] => xmlCache;
}
}