2009-09-14 7 views
1

Dans les documents qu'il énumère SubSonic:SubSonic - Projet de bibliothèque de classes?

o Par défaut, l'outil génère du code d'insertion et la mise à jour qui utilise System.Web.HttpContext.Current.User.Identity.Name et System.Threading.Thread.CurrentPrincipal.Identity. Prénom. Certaines méthodes générées peuvent également utiliser des classes System.Web. Si vous ne voulez pas avoir à ajouter une référence à System.Web dans votre projet, vous devrez fournir vos propres modèles.

J'ai essayé de créer un DAL SubSonic de bibliothèque de classes de type C#. Bien sûr, les fichiers génèrent toutefois une erreur est renvoyée au cours du temps de construction:

*The type or namespace name 'HttpContext' does not exist ...* 

(« Y at-il un modèle distinct disponible pour la création d'un DAL bibliothèque de classe générique qui ne comprend pas les références de System.Web? » Où? : Comment modifier les modèles existants)

Merci!

Répondre

2

(« Y at-il un modèle distinct disponible pour la création d'un DAL bibliothèque de classe générique qui ne comprend pas les références de System.Web? » Où:? Comment modifier les modèles existants

Vous devez avoir une référence à System.Web pour que la version 2 ou 3 de SubSonic fonctionne.Vous pouvez simplement ajouter cela à votre projet de bibliothèque et cela fonctionnera

0

La version 2 a un sous-répertoire avec des fichiers .aspx que vous pouvez modifier pour changer le code du modèle (il vous suffit de changer le chemin dans votre fichier app.config pour pointer vers le nouveau répertoire des fichiers aspx).

La version 3 contient les fichiers .tt que vous modifiez.

Les informations sur la façon de modifier les deux versions des modèles se trouvent sur le site du projet SubSonic.

+0

Merci. J'ai essayé d'ajouter une référence à System.Web dans SubSonic 2.1 Final \ src \ SubSonic \ CodeGeneration \ Modèles \ CS_ClassTemplate.aspx, mais je suppose que je ne peux pas trouver où toutes les instructions "using ..." sont générées. Deuxièmement, est-ce la bonne solution pour cela - en ajoutant simplement un ref à System.Web? Cela va-t-il alors me permettre de créer une bibliothèque de classes autonome DAL qui va compiler correctement? Merci. – ElHaix

+0

Regardez dans les pages de conception de l'ASPX, vous devriez voir un tas de scripts là-bas. C'est là que vous devrez faire la plupart de vos modifications. Je n'ai jamais réellement supprimé System.Web de mon DAL SubSonic. J'utilise ce fichier (avec d'autres changements) dans les applications Web et de bureau sans aucun problème. –

+0

Hmm, donc vous ne créez pas une bibliothèque de classes pour votre DAL? Je suppose que vous créez un projet WebSite et importez simplement la DLL à vos projets, non? Merci. – ElHaix

1

Wow, parlez de compliquer les choses. .Web - J'ai compris ... Pour une raison quelconque, je pensais que je devrais changer le template .aspx

Oups, et merci.

Questions connexes