Comment : ajouter un champ calculé dans une base de données LightSwitch

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

Vous pouvez créer des champs qui dérivent leurs valeurs de celles d'autres champs d'une base de données d'application Visual Studio LightSwitch. Par exemple, vous pouvez ajouter un champ nommé Subtotal à une entité Order_Details. Vous pouvez spécifier que la valeur du champ Subtotal est dérivée en multipliant la valeur du champ UnitPrice par la valeur du champ OrderQuantity.

System_CAPS_ICON_note.jpg Remarque

Vous ne pouvez pas inclure de champ calculé dans une condition de filtre ou un terme de tri dans une requête. Vous ne pouvez pas non plus trier d'informations dans un écran en choisissant l'en-tête de colonne d'un champ calculé.

lien vers la vidéo Pour une démonstration vidéo connexe, consultez la vidéo montrant comment écrire des règles d'entreprise pour la validation et les champs calculés dans une application LightSwitch ?.

Pour définir un champ calculé

  1. Dans l'Explorateur de solutions, ouvrez le menu contextuel d'une entité ou d'une table, puis choisissez Ouvrir.

    L'entité ou la table s'ouvre dans le Concepteur de données.

    System_CAPS_ICON_note.jpg Remarque

    Pour les applications mises à niveau vers Visual Studio 2012 Update 2, dans la barre Perspective, choisissez l'onglet Serveur.

  2. Dans le Concepteur de données, dans la barre de commandes, choisissez Propriété calculée.

    Un nouveau champ s'affiche dans la ligne inférieure de l'entité ou de la table.

  3. Dans la colonne Nom, entrez le nom du nouveau champ (par exemple Sous-total).

  4. Dans la colonne Type, choisissez le type de données du nouveau champ (par exemple Money).

  5. Dans la fenêtre Propriétés, choisissez le lien Modifier la méthode.

    L'Éditeur de code s'ouvre et génère une méthode nommée FieldName_Compute.

  6. Ajoutez du code à la méthode FieldName _Compute, qui définit la valeur du paramètre result. L'exemple suivant définit la valeur du champ Subtotal en multipliant la valeur du champ UntiPrice par la valeur du champ OrderQuantity.

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

Un champ calculé n'est pas enregistré dans la source de données. Un champ calculé s'affiche uniquement dans les écrans qui utilisent l'entité ou la table. Dans le Concepteur de données, une petite icône semblable à une calculatrice s'affiche en regard des champs calculés. Cette icône indique que le champ est utilisé uniquement à des fins d'affichage et qu'il n'affecte pas la source de données de l'entité ou de la table.

Dans la plupart des cas, la valeur d'un champ calculé est recalculée en fonction des modifications apportées à un champ que vous utilisez pour dériver la valeur du champ calculé. Si la valeur du champ calculé n'est pas mise à jour, les utilisateurs peuvent actualiser l'écran pour afficher la valeur mise à jour. Vous pouvez également écrire du code personnalisé pour actualiser l'écran lorsque certains événements se produisent. Consultez Comment : Gérer les événements de données.

Données : les informations de votre application
Comment : Définir des champs de données
Comment : créer une liste de valeurs pour un champ

Afficher: