วันเสาร์ที่ 29 มิถุนายน พ.ศ. 2562

การใช้ AJAX ใน ASP.NET ร่วมกับ JavaScript and XML โดยการส่งค่าผ่าน URL


<a href="javascript:void(0)" onclick="showHint('ทดสอบๆ')"> บันทึก </a>

<script>
    function showHint(str) {
        if (str.length == 0) {
      alert("ไม่มีข้อความ");
                 return;
   } else {
                            var xmlhttp = new XMLHttpRequest();
      xmlhttp.onreadystatechange = function() {
                         if (this.readyState == 4 && this.status == 200) {
                    alert(this.responseText);
            }
      };
      alert(str);
      xmlhttp.open("GET", "<%= Request.Url.AbsoluteUri%>" + "&xyz=" + str, true); // ค่าที่แอบส่งไปพร้อมกับ URL
      xmlhttp.send();
    }
    }
</script>

ที่มา: https://www.w3schools.com/asp/asp_ajax.asp



วันอังคารที่ 2 เมษายน พ.ศ. 2562

optimize : Fast loading image โหลดเพจให้เร็วด้วย b-lazy



<style>
    .b-lazy {
        -webkit-transition: opacity 500ms ease-in-out;
        -moz-transition: opacity 500ms ease-in-out;
        -o-transition: opacity 500ms ease-in-out;
        transition: opacity 500ms ease-in-out;
        max-width: 100%;
        opacity: 0;
    }
    .b-lazy.b-loaded {
        opacity: 1;
    }
</style>
--------------------

<script type="text/javascript" src="/script/js/blazy.js"></script>
<script>
    ;(function() {
        var bLazy = new Blazy();
    })();
</script>
--------------------

<img  class="b-lazy" src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/images/translator-6.png" alt="คำอธิบายภาพ">

-------------------
อ้างอิง:   http://dinbror.dk/blazy/examples/?ref=blog

optimize Image and file เข้ารหัส รูปภาพและไฟล์ ด้วย GZipStream


ติดตั้ง Microsoft.AspNet.Web.Optimization ก่อนตามขั้นตอนในรูปภาพ




จากนั้นคัดลอกคำสั่ง และวางลงไป

PM> Install-Package System.IO.Compression -Version 4.3.0


รอสักครู่........จกมีข้อความแจ้งผลสำเร็จ

Successfully installed 'Microsoft.AspNet.Web.Optimization 1.1.3' to XXXXXXXXXXXXXXXXX
Executing nuget actions took 1.48 sec
Time Elapsed: 00:00:03.7181004


ในโค้ดหลักให้คัดลอกโค้ดส่วนนี้ไปวาง

Imports System.IO.Compression
--------------------------------------------
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Response.Filter = New GZipStream(Response.Filter, CompressionMode.Compress)
        Response.AddHeader("Content-Encoding", "gzip")
    End Sub

optimize CSS และ Java Script ใน ASP.NET ทำให้เร็วขึ้น ด้วย bundles


'สร้างคลาส BundleConfig.cls
'----------------------------------------------------------------
Imports
System.Web.Optimization
Public Class BundleConfig

    Public Function RegisterBundles(_EnableOptimizations As Boolean)
        System.Web.Optimization.
            BundleTable.Bundles.
            Add(New StyleBundle("~/bundles/css-06").Include("~/css/bootstrap.min.css", "~/css/components.css"))

        System.Web.Optimization.
            BundleTable.Bundles.
            Add(New ScriptBundle("~/bundles/jquery-06").Include("~/js/jquery.min.js", "~/js/blazy.js"))

        BundleTable.EnableOptimizations = _EnableOptimizations
    End Function

End Class

'เพิ่มโค้ดใน คลาส Global_asax
'----------------------------------------------------------------
    Sub Application_Start(sender As Object, e As EventArgs)
        RegisterRoutes(RouteTable.Routes)

        Dim obj As New BundleConfig
        obj.RegisterBundles(True)
        obj = Nothing
    End Sub

'เพิ่มโค้ดใน Web.config  บน Sever ด้วย  โดยปกติ โค้ดส่วนนี้จะมีใน Localhost อยู่แล้ว
'----------------------------------------------------------------
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

'ตัวอย่าง การนำไปใน HTML หรือ ASP.NET
'----------------------------------------------------------------
<%: System.Web.Optimization.Styles.Render("~/bundles/css-06") %>
<%: System.Web.Optimization.Scripts.Render("~/bundles/jquery-06") %>

การใช้ WebClient สำหรับเรียก URL

Dim _url As String = " https :// www . MyDomain . com /?q=ทดสอบ " Dim wc As New System . Net . WebClient () wc . Encodin...