.NET System Web Helpers 探索 (ServerInfo, Crypto, Chart)
2021-06-11
探索 .Net System.Web.Helpers 能夠帶來的開發便利性。
說明
ServerInfo
詳盡的顯示網頁伺服器相關資訊,除錯階段可以使用。顯示的資訊包含:伺服器組態、ASP.NET 伺服器變數、HTTP 執行階段資訊 及 環境變數。
public ActionResult Debug()
{
return Content(System.Web.Helpers.ServerInfo.GetHtml().ToString());
}
Crypto
var password = "password";
System.Web.Helpers.Crypto.Hash(password); // same as SHA256
System.Web.Helpers.Crypto.SHA1(password);
System.Web.Helpers.Crypto.SHA256(password);
var hashPass = System.Web.Helpers.Crypto.HashPassword(password); // Hash With Salt
System.Web.Helpers.Crypto.VerifyHashedPassword(hashPass, password);
唯一需要知道的就是使用 HashPassword 就能夠自動將字串加鹽(Salt)並進行雜湊(Hash),HashPassword 後的結果每次都會不同,如附圖所示。但透過 VerifyHashedPassword 仍然能夠比對 HashPassword 與密碼明文是否相同,非常實用,是處理密碼上的好幫手 😉
Chart
可以利用伺服器來渲染圖表,並轉為 png / jpeg 提供下載,但視覺效果較陽春,不如 Chart.js 豐富。
public ActionResult Lab()
{
var c = new System.Web.Helpers.Chart(300, 300, System.Web.Helpers.ChartTheme.Blue);
c.AddTitle("Chart From System.Web.Helpers");
c.AddSeries(
chartType: "column",
xValue: new ArrayList() { 1, 2, 3 },
yValues: new ArrayList() { 3, 9, 27 });
return File(c.ToWebImage().GetBytes(), "jpeg");
}