2012-06-18 4 views
1

Je cherche à réécrire une application d'administration, et j'ai déjà une bibliothèque de classes de domaine et des services/bases de données web assez propres pour gérer toute la logique métier et la persistance. En d'autres termes, la bibliothèque fournit déjà les méthodes CreateFoo, GetFoo et UpdateFoo, qui utilisent par défaut les services Web existants.Comment faire des objets Naked .NET MVC sans persistance

Je pensais que je pourrais utiliser Naked Objects for .NET MVC pour écrire un nouvel outil d'administration Web. Il semble que Naked Objects suppose que vous voulez que le framework Naked Objects gère à la fois l'interface graphique et la persistance, mais je veux juste que le site web MVC provienne d'objets Naked, pas de la persistance.

Existe-t-il des indications sur la procédure à suivre GUI-only Objets Naked pour .NET? Comment "désactiver" complètement le côté persistance? Si je juste l'essayer, je reçois une exception "Aucune chaîne de connexion d'entité dans le fichier App.config" - bien sûr, je ne veux pas utiliser de chaînes de connexion. MISE À JOUR: L'injection d'un nouveau NakedObjects.Persistor.Objectstore.Inmemory.InMemoryObjectPersistorInstaller dans la propriété Persistor dans RunWeb.cs a semblé me ​​faire basculer vers la persistance en mémoire. Plonger un peu plus profond, il semble que je devrais mettre en œuvre des interfaces plus compliquées - d'où la nécessité d'un guide. Peut-être que ça ne vaut pas la peine d'utiliser Naked Objects pour des applications où il faudrait câbler toute la logique de persistance pour s'adapter aux interfaces de Naked Objects?

+4

Est-ce que * Naked Objects * est un framework dont je n'ai jamais entendu parler, ou est-ce simplement une notion que vous utilisez pour dire POCO? Parlez-vous du modèle de vue? Je ne comprends pas ce que vous demandez. –

+0

@Darin: pourrait être ceci: http://nakedobjects.codeplex.com/ –

+0

Désolé, ajouté un lien pour clarifier pour ceux qui ne sont pas familiers. –

Répondre

3

Comme vous le dites, vous pouvez utiliser NO MVC avec le magasin d'objets en mémoire. Vous devez remplacer

protected override IObjectPersistorInstaller Persistor 

propriété dans la classe RunWeb. Mais les objets doivent provenir de quelque part. Dans le cas du magasin d'objets en mémoire, l'autre programme d'installation à rechercher est IFixturesInstaller, qui définit un ensemble d'appareils (entités) à installer dans le magasin d'objets en mémoire au démarrage. Dans l'ensemble, cependant, il se peut que votre cas d'utilisation ne corresponde pas particulièrement à ce que NO MVC a été conçu pour faire.

1

ressemble à naked objects utilisé EF pour la persistance. EF est un ORM donc un db est attendu. donc la réponse courte est, vous ne pouvez pas passer d'une base de données à des services web pour la persistance parce que NO est lié à EF.

Questions connexes