2008-11-04 7 views
0

Je suis en train d'utiliser subsonique pour un nouveau projet avec une base de données existante, mais lorsque je tente de construire le projet après avoir généré les fichiers SubSonic que je reçois ces mêmes deux exceptions sur les différentes classes:erreurs de construction SubSonic

  • déclarations partielles de « MyData.UserCollection » ne doivent pas spécifier différentes classes de base
  • type « MyData.UserCollection » définit déjà membre appelé « UserCollection » avec les mêmes types de paramètres

Je suis en mesure de succès construire un nouveau projet usin g la Northwind DB, donc je crois que l'erreur a quelque chose à voir avec la façon dont les tables sont configurées, mais je ne sais pas où aller à partir de là. Toute aide est appréciée.

Répondre

2

Recherchez UserCollection dans votre projet. SubSonic a généré une classe partielle pour cela dans le fichier généré par User.cs. Vous avez soit une UserCollection de votre choix, auquel cas vous devriez probablement le renommer ou le placer dans un autre espace de nom. Soit cela, soit vous avez essayé d'ajouter des fonctionnalités à UserCollection et vous en dérivez un autre type.

Dernière possibilité est que vous avez une table utilisateur et un tableau Utilisateurs. SubSonic va changer les utilisateurs en utilisateurs. Je ne suis pas sûr, mais cela pourrait causer des erreurs de génération. Je n'ai pas essayé cependant.

1

Rob,

Merci pour l'aide. Vous m'avez mis sur la bonne voie. Apparemment, le générateur n'aime pas les tables avec le mot "Collection" dans le nom. Je vois maintenant que l'erreur était avec:

public partial class UserCollectionCollection : ActiveList<UserCollection, UserCollectionCollection> 
public partial class UserCollection : ActiveList<User, UserCollection> 

En ajoutant:

regexMatchExpression="Collection" 
regexReplaceExpression="Group" 

au fournisseur dans mon fichier web.config j'ai pu construire avec succès.