前言
在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