Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Abonnements

POCO : CreateObject et object initializer

Lorque l’on travaille avec des entités POCO, les requêtes retournent des instances de proxy qui héritent des classes d’entité. Le fait d’avoir des instances de proxy à la place d’instance de nos entités permet, entre autre, de bénéficier du lazy loading.

Lorsque l’on crée une entité pour l’attacher au contexte, on peut faire un new sur notre entity type mais il peut être plus intéressant d’instancier le proxy. Pour cela, on a une méthode CreateObject<T>() sur le contexte.

Cependant, ce qui est dommage avec cette façon de procéder est le fait qu’on ne peut plus alors profiter des Object initializers.

J’ai donc eu l’idée de créer une méthode CreateCategory, CreateProduct, etc. et d’utiliser les paramètres de cette méthode pour l’initialisation. Dans mon cas, je profite des paramètres optionnels (nouvelle feature de C#4) afin d’avoir un système proche des Object Initializers.

Ecrire ces méthodes peut s’avérer pénible.

Aussi, j’ai mis à jour mon template de génération de code afin que cette méthode soit automatiquement générée.

Soit dit en passant, si vous regardez de plus près le code, vous pourrez remarquer l’utilisation d’une autre nouvelle feature de C#4 : la variance dont je me sers pour caster un IEnumerable<PrimitiveTypePropertyWrapper> en IEnumerable<DataPropertyWrapper>.

Maintenant, je peux écrire le code suivant :

context.CreateCategory(id:1, name:"C1", description:"D1");

Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Publié vendredi 22 mai 2009 07:54 par Matthieu MEZIL

Commentaires

Pas de commentaires

Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- Merci par Blog de Jérémy Jeanson le 10-01-2019, 20:47

- Office 365: Script PowerShell pour auditer l’usage des Office Groups de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 11:02

- Office 365: Script PowerShell pour auditer l’usage de Microsoft Teams de votre tenant par Blog Technique de Romelard Fabrice le 04-26-2019, 10:39

- Office 365: Script PowerShell pour auditer l’usage de OneDrive for Business de votre tenant par Blog Technique de Romelard Fabrice le 04-25-2019, 15:13

- Office 365: Script PowerShell pour auditer l’usage de SharePoint Online de votre tenant par Blog Technique de Romelard Fabrice le 02-27-2019, 13:39

- Office 365: Script PowerShell pour auditer l’usage d’Exchange Online de votre tenant par Blog Technique de Romelard Fabrice le 02-25-2019, 15:07

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Stream Portal par Blog Technique de Romelard Fabrice le 02-21-2019, 17:56

- Office 365: Script PowerShell pour auditer le contenu de son Office 365 Video Portal par Blog Technique de Romelard Fabrice le 02-18-2019, 18:56

- Office 365: Script PowerShell pour extraire les Audit Log basés sur des filtres fournis par Blog Technique de Romelard Fabrice le 01-28-2019, 16:13

- SharePoint Online: Script PowerShell pour désactiver l’Option IRM des sites SPO non autorisés par Blog Technique de Romelard Fabrice le 12-14-2018, 13:01