4

Ok, donc je veux créer un code derrière pour les classes non-aspx. J'ai des fichiers de mapping (classes) que je veux montrer dans le projet comme code derrière pour les entites. Y a-t-il un moyen de le faire dans VS2008?Classes NHibernate fluentes comme code derrière pour les classes de domaine

+0

Parlez-vous de l'affichage dans l'explorateur de solution VS? Ou juste être capable d'avoir deux fichiers source pour une seule classe ... – Shog9

+0

Fichiers de mapping NHibernate fluides? Si oui, j'ai eu la même pensée et suis intéressé par les réponses. Malheureusement, je pense que cela nécessite des cours partiels. –

Répondre

1

Vous pouvez créer un fichier de concepteur en le nommant Class.Designer. (Vb ou cs) et il s'affichera comme code derrière pour la classe que vous créez. Une des classes devra cependant être une classe partielle.

1

Il semble que vous parlez de fichiers apparaissant comme imbriqués dans l'Explorateur de solutions. Les fichiers ASP.NET Codebehind ne sont qu'un exemple de cela.

Qu'est-ce que vous voulez dans le fichier de projet est quelque chose comme ceci:

<ItemGroup> 
    <EmbeddedResource Include="Resources.resx"> 
     <Generator>ResXFileCodeGenerator</Generator> 
     <LastGenOutput>Resources.Designer.cs</LastGenOutput> 
     <SubType>Designer</SubType> 
    </EmbeddedResource> 
</ItemGroup> 
<ItemGroup> 
    <Compile Include="Resources.Designer.cs"> 
     <DependentUpon>Resources.resx</DependentUpon> 
     <AutoGen>True</AutoGen> 
     <DesignTime>True</DesignTime> 
    </Compile> 
</ItemGroup> 

Je crois qu'il est l'élément <DependentUpon> qui indique l'imbrication.

0

J'ai vraiment eu ce travail. Maintenant, toutes les "Map" apparaissent comme du code derrière les classes pour mes entités, ce qui me fait gagner beaucoup de temps en recherchant le mapping pour l'entité. Voici à quoi cela ressemble dans le fichier de projet.

<Compile Include="Entities\OrderMap.cs"> 
    <DependentUpon>Order.cs</DependentUpon> 
</Compile> 

Nous avons également créé un modèle afin que l'on peut cliquer juste, choisissez Ajouter une entité NH et il est enregistré au projet, comme indiqué ci-dessus. Le seul problème en ce moment est de renommer l'entité, il faut aller dans le projet et changer le nom manuellement. Mais cela n'arrive pas souvent et est un petit compromis pour gagner en productivité.

Questions connexes