2015年5月11日 星期一

[重點翻譯] ASP.NET 4.6的更新 -- 本文只摘錄 Web Forms的部分

原文出處:

[重點翻譯] ASP.NET 4.6的更新 -- 本文只摘錄 Web Forms的部分

http://www.dotblogs.com.tw/mis2000lab/archive/2015/05/04/asp.net_46_web_form_updating_from_msdn_blog.aspx


日前,微軟 Build 2015大會發佈了許多新技術與訊息
微軟 MSDN Blog也分享了許多第一手資訊。

因為我只注重在 Web Form這塊,只摘錄這方面的重點
MVC 5 / Web API 2 / EF的用戶可以參閱原文
(發表於 2015/4/30,此時的VS 2015版本為RC版。後續文章的圖片也引用自原文)

==== 文章摘錄如下: ========================================================

What is ASP.NET 4.6?
何謂 ASP.NET 4.6?
ASP.NET 4.6是 umbrella term給現有framework,例如:ASP.NET Web Form / MVC 5 / Web API 2等等升級使用的。
您可以在標準的、桌面上(desktop-enable)的.NET Framework Model用它來建構Web Apps。
Improvements in ASP.NET 4.6 for Web Forms/ MVC 5/ Web API 2.
ASP.NET 4.6在Web Form上的改進  (MVC 5 / WEb API 2的用戶,請參閱原文說明)
ASP.NET 5(譯者註解:開放源碼)上的部分運作功能,也會再ASP.NET 4.6的改進framework上運作。
包含.NET Compiler Platform(Roslyn / 羅斯林專案)、在IIS上支援HTTP/2功能等等。
Authentication Updates
驗證的升級
ASP.NET 4.6樣板現在採用了Open Id Connect中介軟體來作Azure AD的驗證。如下圖,最新的驗證設定畫面。
(點選圖片可超連結到原文)
clip_image002
Enabling the .NET Compiler Platform (“Roslyn”) in ASP.NET applications
在VS 2015裡面的Web Forms樣板,預先安裝了軟體套件。下圖就是一個Web Forms網頁。
(點選圖片可超連結到原文)
clip_image004
使用Web Forms的用戶,上圖的底部(Error List)雖然出現一些錯誤訊息,但請您放心,不會影響到專案的正常運作。
Async Model Binding for Web Forms
Web Forms的 "非同步 Model Binding"
ASP.NET 4.5把MVC使用的Model Binding讓Web Forms也能享有相同的便利。
ASP.NET 4.6則是為Web Forms使用的 Model Binding,加入非同步(Async.)功能。 
程式範例如下:(引用自原文網站)
註解:底下的Web Forms用了 GridView控制項,透過Model Binding(查詢、撈出、Select Method)學生資料
<%--
    Web Forms page calling a select method to model bind to a list of students.
    The GridView uses Model Binding to bind to Student type in your app.
    To use Async Model Binding, mark your page with Aysnc=True attribute.
    --%>
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.Master" Async="true" CodeBehind="Default.aspx.cs" Inherits="WebApplication226._Default" %>
     runat="server" ID="studentsGrid"
        ItemType="ContosoUniversityModelBinding.Models.Student" DataKeyNames="StudentID"
        SelectMethod="studentsGrid_GetData"
        UpdateMethod="studentsGrid_UpdateItem"
        DeleteMethod="studentsGrid_DeleteItem"
        AutoGenerateEditButton="true"
        AutoGenerateDeleteButton="true"
        AllowSorting="true" AllowPaging="true" PageSize="4"
        AutoGenerateColumns="false">
       
           
           
           
           
           
               
                   
                        runat="server" />
               
           
       
   
   
   
//Async method for Select
public async Task studentsGrid_GetData(int startRowIndex, int maximumRows)
{
    SchoolContext db = new SchoolContext();
    var query = db.Students.Include(s => s.Enrollments.Select(e => e.Course));
    SelectResult result = new SelectResult(query.Count(),
        await query
        .SortBy("StudentID")
        .Skip(startRowIndex)
        .Take(maximumRows)
        .ToListAsync());
    return result;
}
譯者註解:您也可以參考這篇文章,使用 VB語法的 "非同步" Model Binding,範例如下。
別忘了 @Page指示詞裡面要加上   <%@ Page Language="VB" Async="true"
     SelectMethod="vsTweetList_GetData" ItemType="LinqToTwitter.Status">
     
         
          <%#: $"At: {Item.CreatedAt.ToString("T")} on {Item.CreatedAt.ToString("d")}" %> 
         
 
          <%#: Item.Text %> 
         

   
     

  
Public Function vsTweetList_GetData() As IEnumerable(Of Status)
     Return GetTweetsFor("VisualStudio")
End Function 
Public Async Function vsTweetList_GetDataAsync() As Threading.Tasks.Task(Of IEnumerable(Of Status))
     Return Await GetTweetsForAsync("VisualStudio")
End Function
Add support for HTTP/2
支援HTTP/2
在Windows 10與.NET Framework 4.6,增加了HTTP/2的支援。
HTTP/2的主要目標是讓瀏覽器到網站的單一連結,能夠改善效能、減少延遲、增加網路使用率。
這一段影片有更多介紹
Updated Ajax Control Toolkit
Ajax Control Toolkit的更新
Web Form開發者愛用的AJAX Toolkit也有更新。


=========================================================================
關於 Build 2015大會的新宣示,其他新的功能與說明


上面文章裡面提到的幾個專有名詞,您可以查閱以前發表過的文章:

[中文翻譯] Visual Studio的 羅斯林專案(Roslyn Project)


[中文翻譯] ASP.NET 5 概觀 (ASP.NET 5 Overview,原作 Tom FitzMacken 2014/11/12)

[中文翻譯] ASP.NET 5 簡介(Introducing ASP.NET 5,原作ScottGu 2015/2/23)







ASP.NET課程 / ASP.NET教學,請看
    http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.aspx

    [台北] ASP.NET入門實戰 + ADO.NET進階【二合一】49 hr


ASP.NET影片、遠距教學,請看:
    http://www.dotblogs.com.tw/mis2000lab/archive/2015/03/09/aspnet-online-learning-distance-education-2015.aspx

    [遠距教學、教學影片] ASP.NET (Web Form) 六週課程 上線了!




我將思想傳授他人, 他人之所得,亦無損於我之所有;
猶如一人以我的燭火點燭,光亮與他同在,我卻不因此身處黑暗。----Thomas Jefferson

......... 寫信給我,mis2000lab (at) yahoo.com.台灣 .....................................................................................
................   facebook社團   https://www.facebook.com/mis2000lab   ............................
................   Google+   https://plus.google.com/100202398389206570368/posts ..............
................  YouTube (ASP.NET) 線上教學影片  http://goo.gl/rGLocQ






原文出處:

[重點翻譯] ASP.NET 4.6的更新 -- 本文只摘錄 Web Forms的部分

http://www.dotblogs.com.tw/mis2000lab/archive/2015/05/04/asp.net_46_web_form_updating_from_msdn_blog.aspx

沒有留言: