前言

在Nancy中有個十分不錯的功能-Diagnostics,可以說這個功能讓人又愛又恨。

或許我們都做過下面這樣的一些嘗試:

  • 記錄某一個功能用到的相關技術信息

  • 記錄下網站的訪問記錄

  • 全局配置某些框架內部功能的開關

  • .....

當然,對于上面提到的這些東西,現在都有非常成熟的解決方案可以用。

不過,Nancy在內部也實現了這樣的一個機制,可以讓我們比較方便的處理這些問題。

下面我們先來看看具體是如何使用的!本文也是著重于如何使用。

如何使用

由于在Nancy1.x與2.x中的差別,在使用Diagnostics的用法上也有了略微較大的差別。

截至在本文編寫之前(2017-06-26),Nancy在GITHUB上面的相關介紹還是基于1.x的。而本文是用2.0作為例子演示的,當然也有與1.x的簡單對比。

在2.0中,Diagnostics的啟用是通過在Bootstrapper中的Configure方法啟用,而在1.x中是通過重寫一個DiagnosticsConfiguration類型的屬性來啟用。

下面是兩個大版本之間的使用方法:

2.0的使用如下:

public override void Configure(INancyEnvironment environment){
    environment.Diagnostics(password: "123");    base.Configure(environment);
}

1.x的使用如下:

protected override DiagnosticsConfiguration DiagnosticsConfiguration
{    get { return new DiagnosticsConfiguration { Password = "123"}; }
}

其中,2.0中的寫法是通過INa

網友評論