.NET System Web Helpers 探索 (ServerInfo, Crypto, Chart)

2021-06-11

探索 .Net System.Web.Helpers 能夠帶來的開發便利性。

logo

說明

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");
}

相關連結

ASP.NET MVC 從無到有打造一個應用系統

Visual Studio 入門教學