2009-11-10 4 views
0

Au travail, nous avons une application web assez volumineuse qui fonctionne en ayant quelques pages, avec beaucoup de contrôles utilisateur qui sont imbriqués dans ces pages. Cela fonctionne très bien la plupart du temps, mais nous avons un problème au moment où l'un des contrôles de l'utilisateur ne fonctionne pas. A l'origine, il était référencé à partir d'un autre projet dans la solution, mais lorsque cela ne fonctionnait pas, j'ai décidé de copier le fichier dans le projet et de l'enregistrer localement.Les contrôles utilisateur VB.Net ne fonctionnent pas dans Live

Cela fonctionne sur notre système de développement, c'est seulement quand nous le déplaçons au déploiement qu'il cesse de fonctionner, et je pense que c'est quelque chose qui me manque dans la construction. Quand vous allez à la page sur Live le contrôle est juste manquant, et aucune erreur n'est générée.

Nous utilisons VS2005 si cela fait une différence.

Répondre

0

Garçon est-ce embarrassant. Après plusieurs jours de tenter de trouver le problème, j'ai découvert une condition dans le code qui dit essentiellement

If Not FieldSet Then 
    lblView.parent.parent.Visible = False 
End If 

Il semble que l'idée du codeur d'origine avait été si la valeur que l'étiquette était censé afficher ensemble était pas, puis cachez cette ligne de la grille de données. Malheureusement, ce que cela a effectivement fait était de cacher toute la grille de données. Pour résoudre ce problème, j'ai placé un identifiant pour la ligne dans le code HTML, puis j'ai remplacé la condition de masquage de sorte que si la valeur n'était pas trouvée, cette ligne serait masquée.

0

Utilisez-vous un projet de déploiement Web? Si c'est le cas, il est peut-être pris en compte par une exclusion de build que vous avez configuré comme ci-dessous. Vous devriez être en mesure d'ouvrir votre fichier de projet de déploiement et de confirmer qu'il n'est pas récupéré ici en recherchant la section suivante.

<ItemGroup> 
    <ExcludeFromBuild Include="$(SourceWebPhysicalPath)\Test\**\*.*"/> 
    </ItemGroup> 

Également, utilisez-vous SVN/Visual SVN? Si c'est le cas, lorsque vous avez copié le contrôle dans votre nouveau projet, vous ne l'avez pas ajouté au contrôle de la source et il n'est pas publié dans votre référentiel. Si vous utilisez Visual SVN, ce serait aussi simple qu'un clic droit et la sélection de l'ajout à subversion.

Sans plus d'informations ce sont deux choses qui viennent à l'esprit comme des problèmes potentiels.

+0

Salut, merci pour la réponse. Nous n'utilisons aucun projet de déploiement et utilisons à la place des scripts qui copient .dll à partir du répertoire bin de développement et d'autres choses que nous copions ensuite sur notre serveur live et exécutons d'autres scripts pour le déployer. J'ai vérifié notre SVN et les fichiers sont définitivement là. La chose étrange est que le contrôle est utilisé dans plusieurs projets, et semble fonctionner dans certains d'entre eux mais pas dans d'autres et nous ne pouvons pas trouver de différences évidentes entre ces projets. –

Questions connexes