close

重新閱讀ASP.Net MVC相關資訊後,溫故知新~

參考影片來源:https://www.bilibili.com/video/BV1ri4y1c7em/?p=17&spm_id_from=pageDriver

  • 好用的工具1:ILSpy 可以將dll還原為原始的code。
  • 好用的工具2:ViewState decoder 可以將WebForm的ViewState屬性內的值由 "一串英數夾雜的文字" 轉為 "使用者可以看得懂的文字"。

 

  • http  get method:參數會顯示在URL。
  • http post method:參數不會顯示在URL。

 

  •  cookie機制:無法儲存過多的信息,亦無法跨不同的瀏覽器,其生命週期即瀏覽器的生命週期,當瀏覽器重啟,cookie就自動刪除了,但可以透過設定Expires屬性變更其生命週期。
  • session機制:cookie是將資料儲存在客戶端,session是將資料儲存在服務器端,且session有自動銷毀機制,一段時間內瀏覽器與服務器沒有任何的交互,session會定時銷毀,ex. 登錄功能。

 

  • html頁籤的id屬性for DOM操作使用,name屬性for 傳送資訊到後端使用。

 

  • AJAX:是一種進行頁面局部非同步刷新的技術。利用javascript進行封裝,減少繁瑣的程式碼。

 

  • Bootstrap5網頁排版(切版):
    • 不再依賴JQuery
    • 不支援IE瀏覽器

 

  • ashx:是一種由Microsoft開發的ASP.NET Web Handler File。
  • aspx(vs. ashx):aspx是一個特殊的ashx,屬於page類,實現了IHttpHandler接口,目的是生成HTML。
    • 可透過<% C# code %>符號在aspx網頁寫入C# code 或call C# 的function取得function執行結果。
    • aspx使用ViewState屬性將http模擬成有狀態的形式。但ViewState屬性會造成網頁資源佔用,拖慢網頁速度,故能不使用就盡量不使用(可將EnableViewState設置為"false",可於全頁面禁用或針對控件禁用)。
  • WebForm 開發模式:Code Behind 開發模式(Tag 與 Code分離,但Code與Tag的耦合度仍高) vs. Code Inline 開發模式(Tag 與 Code會在同一個檔案)。
  • cshtml:使用Razor模板搭配C#語法。
  • MVC Controller:控制器的三個原則:非靜態類,實現IController接口,必須以Controller結尾命名。
  • MVC使用補充說明:
    •  "<%= %>" vs. "<%: %>":"<%: %>"會在遇到特殊字元時,將特殊字元轉為代碼,可保頁面安全性,惟若寫成 "<%: Html.Raw() %>" 或 "<%: new HtmlString() %>" 或 "<%: new MvcHtmlString() %>",效果將與前者無異;"<%= %>"會輸出原始文字,若為script,會有相應的效果,網頁可能有安全性的疑慮。

 

  • IsPostBack使用時機。
arrow
arrow
    創作者介紹
    創作者 mina 的頭像
    mina

    mina

    mina 發表在 痞客邦 留言(0) 人氣()