如何:在 LightSwitch 資料庫中加入計算欄位

 

如需 Visual Studio 2017 的最新文件請參閱 Visual Studio 2017 文件

您可以建立會從 Visual Studio LightSwitch 應用程式資料庫中的其他欄位值衍生其值的欄位。 例如,您可以將名為 Subtotal 的欄位加入至 Order_Details 實體。 您可以指定透過將 UnitPrice 欄位值乘以 OrderQuantity 欄位值的方式衍生 Subtotal 欄位的值。

System_CAPS_ICON_note.jpg 注意

您不能將計算欄位包含在查詢中做為篩選條件或排序條件的一部分。 此外,您也無法選擇計算欄位的欄標題來排序螢幕中的資訊。

視訊的連結 如需相關的影片示範,請參閱 How Do I:撰寫 LightSwitch 應用程式中用於驗證和計算欄位的商務規則

若要定義計算欄位

  1. 在 [方案總管] 中,開啟實體或資料表的捷徑功能表,然後選擇 [開啟]。

    該實體或資料表會在 [資料設計工具] 中開啟。

    System_CAPS_ICON_note.jpg 注意

    如果是已經升級為 Visual Studio 2012 Update 2 的應用程式,請選擇 [透視圖] 列上的 [Server] 索引標籤。

  2. 在 [資料設計工具] 的命令列上,選擇 [計算的屬性]。

    實體或資料表的最下面一列會出現新的欄位。

  3. 在 [名稱] 欄中,輸入新欄位的名稱 (例如,Subtotal)。

  4. 在 [類型] 欄中,為新的欄位選擇資料類型 (例如,[Money])。

  5. 在 [屬性] 視窗中,選擇 [編輯方法] 連結。

    [程式碼編輯器] 隨即開啟,並產生名為 FieldName_Compute 的方法。

  6. 將程式碼加入至會設定 result 參數值的 FieldName _Compute 方法。 下面範例會將 UntiPrice 欄位值乘以 OrderQuantity 欄位值,以設定 Subtotal 欄位的值。

            partial void Subtotal_Compute(ref decimal result)
            {
                result = this.Quantity * this.UnitPrice;
            }
    

計算欄位不會儲存到資料來源中。 計算欄位只會在使用實體或資料表的螢幕中出現。 在資料設計工具中,計算欄位旁邊會顯示類似計算機的小圖示。 此圖示表示該欄位僅用於顯示用途,並不會影響實體或資料表的資料來源。

在大多數情況下,計算欄位的值會根據您對用於衍生計算欄位值之任何欄位所做的變更來重新計算。 如果計算欄位的值未更新,使用者可以重新整理螢幕來檢視更新後的值。 您也可以撰寫當發生特定事件時會重新整理螢幕的自訂程式碼。 請參閱 如何:處理資料事件

資料:應用程式背後的資訊
如何:定義資料欄位
如何:為欄位建立值清單

顯示: