在本文中,我們將探討 Visual Studio LightSwitch 中的一些新功能,這些功能可協助您構建新式移動業務生產力應用程式。
Visual Studio LightSwitch(以下簡稱 LightSwitch)旨在簡化並縮短商務應用程式的開發過程。LightSwitch 應用程式可使用多種資料來源、提供業務和授權邏輯以及建立可在多種裝置上啟動並執行用戶端,而所有這些都不需要編寫管道代碼。
LightSwitch 可彙總多種資料來源,並且它自動公開一組開放資料服務(開放資料協議,簡稱 OData)以支援自訂用戶端和自助商業智慧 (BI) 方案。通過 LightSwitch 還可編寫代碼以按需自訂應用程式,無論是 UI 控制項、商務邏輯、資料服務或其他組件均可。
四月發布 Visual Studio 2012 Update 2 後,LightSwitch 還可快速產生適合觸摸並在新式行動裝置上運行良好的 HTML5 用戶端。LightSwitch HTML 用戶端以符合標準的 HTML5 和 JavaScript 構建而成,可在 Windows RT、Windows Phone 8、iOS 版本為 5 和 6 的 iPhone 和 iPad 以及 Android 4.x 裝置上提供觸摸優先的新式體驗。
此外,通過新的 SharePoint 2013 應用程式模型,LightSwitch 還可在 SharePoint 和 Office 365 中輕鬆方便地構建自訂商務應用程式。當今有許多企業使用 SharePoint 作為一個中樞以改善人員、內容和流程之間的協作。儘管仍可自行或在 Windows Azure 中託管應用程式,但在 LightSwitch 應用程式中啟用 SharePoint 後,可利用 SharePoint 中的應用程式生命週期管理、標識和存取控制功能,更不用說企業中已在 SharePoint 中啟動並執行業務資料和流程。
LightSwitch HTML 用戶端
在 LightSwitch 中始終以資料模型開始,無論是為新資料建模還是串連到現有的資料來源都是如此。由於在本文中我們主要介紹新功能,因此我們已建立了一個簡單的資料模型,並向資料庫填入了一些初始資料。這樣,即做好全部準備,可開始建立一個用戶端,而使用它可確保在參加重要會議(如 Visual Studio Live)時列席最令人感興趣的場次!如果這是您首次接觸 LightSwitch,那麼務必閱讀 MSDN 雜誌過往的文章,如 2012 年九月號的“用 Visual Studio LightSwitch 2012 進行資料整形”(msdn.microsoft.com/magazine/jj618303),或查看 LightSwitch 開發中心 (msdn.com/lightswitch),從而確保不會錯過其可提供的大量資料建模、自助 BI、並發處理和多線程功能。
HTML 用戶端提供一種構建觸摸優先的單頁應用程式的方法,此類應用程式可在大量行動裝置上運行,一般稱為“輔助應用程式”,以表示這些應用程式僅在更大的體繫結構中發揮一種特定的作用。建立此類輔助應用程式以現場瀏覽資料(正如我們在本文中所做)是 HTML 用戶端入門的一個良好練習,但無法體現這些應用程式可解決的問題範圍之廣。這些輔助應用程式不僅可查閱資料,還可修改和存回資料(例如,遞送包裹時收集客戶的簽名),有時甚至還可利用地理位置等裝置特定功能(例如,採集土壤樣本的地點),從而協助貴公司節省時間和資金。
螢幕模板和導航:無論建立何種類型的用戶端,LightSwitch 均採用同一方法定義螢幕,即使用一組可選擇的預定義模板。若要添加螢幕,只需在“方案總管”中按右鍵項目,然後選擇“添加螢幕”選項即可。此操作將開啟一個對話方塊,從中可選擇螢幕模板和一些其他選項,如螢幕的名稱以及該螢幕將使用的資料。隨後將根據所選模板產生此螢幕,並在螢幕設計器中開啟它。
對於有些經驗的 LightSwitch 開發人員,這已經讓人感到比較熟悉,因為設計時體驗幾乎與使用 LightSwitch 在瀏覽器內外的 Silverlight 應用程式中建立螢幕完全一樣,從而簡化已經比較輕鬆的學習過程。LightSwitch 遵循應用程式底層的模型-視圖-視圖模型 (MVVM) 體繫結構以及螢幕設計器在左側顯示視圖模型,在右側顯示對應視圖的某種表現形式這一方式。
一個值得注意的變化是設定從一個螢幕到另一個螢幕的導航(或將任何其他動作綁定到因使用者點擊螢幕上的元素而導致的事件)已真正成為螢幕設計器中的頭等大事。這是一種明顯的進步,不僅因為應用程式如此側重於觸摸,還因為 LightSwitch HTML 用戶端可產生單頁應用程式 (SPA)。Silverlight 用戶端具有一個多重文件介面 (MDI) 外殼,可同時開啟許多螢幕,因此,在 LightSwitch HTML 應用程式中,在不同螢幕間導航逐漸層得更加重要。
例如,如果對場次實體使用“瀏覽資料”模板以建立此應用程式中的第一個螢幕,則將產生一個含有場次列表的螢幕。(將在螢幕設計器中選擇此列表,然後在“屬性”視窗中單擊“Edit Item Tap Action”(編輯項點擊操作)連結。) 此操作將開啟一個對話方塊,其中自動根據情況給出建議: 由於使用者正在瀏覽場次並已點擊某項,因此該對話方塊建議進行開啟螢幕的操作,使用者在該螢幕中可查看所選場次的詳細資料。由於尚未建立螢幕,因此該對話方塊還建議您建立該螢幕。如圖 1 所示。
圖 1:設定觸摸事件的操作現在是螢幕設計器中的頭等大事
接受之後,按 F5 即產生應用程式,並在預設瀏覽器中啟動一個新的調試場次。隨後將開啟主畫面,其中顯示一個簡單的場次列表。點擊某個場次時,應用程式將平滑地導航到新產生的詳細資料螢幕,其中以簡單的兩列布局顯示該特定場次的詳細資料,如圖 2 所示。
圖 2:自適應設計協助只需編寫一個應用程式即可用於多種外觀尺寸