comment rafraîchir-vous des références dans les applications ASP.NET sans visual studio?

StackOverflow https://stackoverflow.com/questions/868559

  •  22-08-2019
  •  | 
  •  

Question

J'ai une application ASP.NET qui repose sur un ensemble externe qui ne soit pas dans le GAC. L'application a un fichier .Refresh qui copie l'ensemble dans le répertoire bin lorsque l'application est compilée.

Quand j'installer l'application sur un serveur de production (en copiant les fichiers d'applications dans un répertoire virtuel), le répertoire bin est pas mis à jour automatiquement par la présence du fichier .Refresh comme je pensais. J'ai essayé d'utiliser l'outil de aspnet_compiler, mais cela ne fonctionne pas car il attend les assemblées d'être dans le répertoire bin déjà.

Comment puis-je .NET pour mettre à jour le répertoire bin de l'application sans visual studio?

Était-ce utile?

La solution

Les fichiers .Refresh sont juste là pour que VS sait qu'il doit garder une trace des originaux, et si elles ont changé, copier une nouvelle version dans le dossier / bin. Ils sont de simples fichiers textes avec un chemin d'accès à l'original -. La date de modification est utilisée pour la comparaison

Quand vous dites:

  

Quand j'installer l'application sur un serveur de production (en copiant les fichiers d'applications dans un répertoire virtuel), le répertoire bin est pas mis à jour automatiquement.

Que voulez-vous dire exactement? N'êtes-vous pas copier aussi le contenu du répertoire bin sur le serveur de production? Vous devrez déployer des ensembles dépendants avec l'application.

Autres conseils

Effacement du répertoire de cache de asp.net peut aider:

C:\WINDOWS\Microsoft.NET\Framework\
FRAMEWORK_VERSION\Temporary ASP.NET Files\YOUR_APP_NAME

Supprimer les fichiers .Refresh.

Faire un simple script de construction (en utilisant tout ce que vous voulez cmd, NAnt, Râteau, psake ...) que:

  • copie ces fichiers dans votre dossier application asp.net
  • vous construire l'application asp.net.

Ou vous pouvez modifier votre fichier .csproj et ajouter quelque chose comme:

<ProjectExtensions>
  <PropertyGroup>
    <PreBuildEvent>copy c:\path\to\dll\files $(ProjectDir)$(OutDir)</PreBuildEvent>
  </PropertyGroup>
</ProjectExtensions>

Cela va ajouter une action avant de construire qui copie vos fichiers dll à la sortie dir de votre application asp.net. Vous devrez construire avec MsBuild

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top