Le livre de Scott Hanselman m'explique comment créer l'application NerdDinner MVC.
Pour valider le type d'entité Dîner généré par l'assistant de modèle de données d'entité, il a d'abord étendu l'entité Dîner en utilisant l'astuce de la classe partielle, puis il a créé une classe de copains à associer à Dîner.
Voir le code suivant pour les détails.
using System.ComponentModel.DataAnnotations;
namespace NerdDinner.Models
{
[MetadataType(typeof(DinnerValidation))]
public partial class Dinner { }
public class DinnerValidation
{
[Required(ErrorMessage = "Title is required")]
[StringLength(50, ErrorMessage = "Title may not be longer than 50 characters")]
public string Title { get; set; }
[Required(ErrorMessage = "Description is required")]
[StringLength(256, ErrorMessage = "Description may not be longer than 256 characters")]
public string Description { get; set; }
[Required(ErrorMessage = "Addresss is required")]
public string Address { get; set; }
[Required(ErrorMessage = "Country is required")]
public string Country { get; set; }
[Required(ErrorMessage = "Contact phone is required")]
public string ContactPhone { get; set; }
}
}
Ma question est la suivante
Existe-t-il un moyen "pratique" de créer et d'associer la classe de copains à Dinner ? Je veux dire que nous pouvons utiliser un outil dans Visual Studio ou n'importe quel plug-in pour créer la classe de copains et associer automatiquement le copain au dîner. Bien sûr, je devrais faire quelques ajustements au code généré pour répondre à mes besoins, mais ce n'est pas un gros problème.
EDIT 1 : Je vais ajouter quelques informations supplémentaires. L'assistant de modèle de données d'entité est utile car il crée une validation de schéma basée sur le schéma de la base de données. Par exemple, la propriété DinnerId sera définie à Int32 par défaut pour correspondre au type de la colonne DinnerID qui est de type int.