Le annotazioni sono degli attributi che possono essere applicati ad una entità o alle sue proprietà.
Le annotations hanno tre proprietà:
- name: indica il nome del template (è possibile omettere l’estensione).
- namespace: indica l’url su cui è presente il template (omettere il nome del template).
- value: indica il valore dell’attributo (opzionale).
Nell’esempio sottostante, il template verrà scaricato dall’url https://schemacodearchitects.blob.core.windows.net/templates/entityfwk/required.ejs
entities:
- name: Category
description: The product category
useRepository: true
repositoryName: Category
fields:
- name: name
type: string
description: The name of the category
annotations:
- name: required
namespace: https://schemacodearchitects.blob.core.windows.net/templates/entityfwk/
Questo andrà a generare una classe Category
. La classe conterrà una proprietà Name
alla quale sarà applicato l’attributo Required
.
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Ca.ShoppingCart.Store.Domain.Model
{
/// <summary>
/// The product category
/// </summary>
public partial class Category : EntityBase
{
/// <summary>
/// The name of the category
/// </summary>
[Required]
public string Name
{
get;
set;
}
}
}
Required
[Required]
Può essere applicato ad una proprietà per specificare che la corrispondente colonna del database non può contenere valori nulli. Per ulteriori informazioni fare riferimento alla documentazione ufficiale.
Per generare questa annotazione
annotations:
- name: required
namespace: https://schemacodearchitects.blob.core.windows.net/templates/entityfwk/