2009-06-03 8 views
0

E.g. quand j'ajoute une nouvelle table, il ne figure pas dans l'espace de noms Northwind jusqu'à ce que je supprimer le dossier du projet à partir de: C: \ Users \ nomUtilisateur \ AppData \ Local \ Temp \ fichiers temporaires ASP.NET \Existe-t-il un moyen de forcer l'actualisation du méta-modèle, que SubSonic construit après un changement DDL dans la base de données

ou d'ajouter readd le SubSonic.dll

je la configuration suivante:

<configSections> 
     <section name="SubSonicService" type="SubSonic.SubSonicSection, SubSonic"></section> 

.... 

    <SubSonicService defaultProvider="Northwind"> 
    <providers> 
     <clear/> 
     <add name="Northwind" 
      type="SubSonic.SqlDataProvider, SubSonic" 
      connectionStringName="Northwind" 
      generatedNamespace="Northwind"/> 
    </providers> 
    </SubSonicService> 

    <connectionStrings> 
    <add name="Northwind" connectionString="Data Source=.;Database=Northwind;Integrated Security=true;"/> 
    </connectionStrings> 

.... 
     <compilation debug="true"> 

      <buildProviders> 
      <add extension=".abp" type="SubSonic.BuildProvider, SubSonic"/> 

      </buildProviders> 
... 


     <pages> 
     <controls> 
        <add assembly="SubSonic" namespace="SubSonic" tagPrefix="subsonic"/> 

Répondre

3

le problème ici est que le BuildProvider ne « disparaissent » sauf si vous modifiez le fichier abp dans App_Code. C'est un hack, mais si vous voulez que cela fonctionne, vous devez ouvrir ce fichier et le modifier d'une manière ou d'une autre en ajoutant un espace ou quelque chose - alors il donnera le coup d'envoi au constructeur. Je travaille sur certains templates T4 donc vous n'avez pas besoin de faire ça. Aussi - vous pouvez utiliser notre outil de ligne de commande pour générer les choses à classer pour vous: http://subsonicproject.com/subcommander/using-the-command-line-tool-subcommander/

0

Merci, les deux travaillé!

Soit comme vous le dites simplement changer le fichier * .abp (couple supplémentaire d'espaces)

ou

sonic.exe générer/config « D: \ chemin \ vers \ my \ web.config "

PS J'ai un dossier D: \ temp \ utils, où je garde tous les outils de ligne de commande utilisés ... et il fait partie de la variable d'environnement% PATH% ... et il m'a fallu quelques minutes pour réaliser que je a dû copier l'ensemble:

D: \ libs \ ORM \ SubSonic_2.1_Final_Source \ src \ SubSonic \ bin \ Debug dans ce dossier outils de ligne de commande ...

Edit: Encore plus rapide avec VS externe outil commande: Outils - Outils externes - Ajouter Titre: SubSonic Commande: D: \ path \ to \ sonic.exe Arguments: generate/config "D: \ chemin \ vers \ mon \ web.config" Répertoire initial: {$ ProjectDir }

Outils - Options - clavier Trouver des outils subsoniques

pour que cela fonctionne partout sur la ligne de commande