Question

J'ai donc un « site Web » ASP.NET (par opposition à une application Web) qui n'a pas de fichier AssemblyInfo.cs ou le dossier Bin ou quelque chose comme ça.

Je veux avoir un moyen de spécifier un numéro de version de l'Assemblée (par exemple 7.0.2.0). Dans une application Web, vous devez faire cela dans un fichier AssemblyInfo.cs.

Je l'ai essayé d'ajouter un dossier Propriétés avec un fichier AssemblyInfo.cs mais je ne pense pas que son être repris - parce que quand je l'appelle, je reçois 0.0 Assembly.GetExecutingAssembly () getName () Version.ToString ().. .0.0

: Que dois-je faire pour obtenir AssemblyInfo.cs travail ou comment puis-je spécifier un numéro de version

Était-ce utile?

La solution

K Scott Allen a un poste , mais personnellement je vous recommande de passer à un projet d'application Web.

Autres conseils

Le numéro de version définit la version de la dll. Comme vous ne précompilez projets de site web, je ne suis pas sûr que vous pouvez définir un numéro de version comme celui-ci. Vous aurez juste besoin de la version en utilisant une étiquette ou quelque chose dans votre système de contrôle de code source et la gale animale vous-même.

Il n'y a aucun montage simple pour vous de définir le numéro de version de. Vous avez besoin de repenser ce que vous essayez d'accomplir.

Essayez de mettre la classe AssemblyInfo dans le dossier App_Code.

Peut-être que je suis un peu en retard, mais je suis tombé sur le problème, et ce que je l'ai été tout simplement créer et contenant l'assemblage juste un fichier source AssemblyInfo.cs avec les attributs que je voulais.

Alors j'ai ajouté le projet AssemblyInfo à ma solution.

Et puis je mis en place un script à exécuter sur le déploiement comme suit:

:: Just prepare and clean before starting
SET DOTNETINSTALLDIR=%FRAMEWORKDIR%\v4.0.30319
rmdir /S /Q "%Depot%\AssetExplorer.Web"
mkdir "%Depot%\AssetExplorer.Web"

:: Compiles the web site
call "%DOTNETINSTALLDIR%\aspnet_compiler" -f -c -u -p "%~1..\Discovery.Web" -v "/AssetExplorer" "%Depot%\AssetExplorer.Web"

:: Time to merge the contents into the assembly
call "%WindowsSDK_ExecutablePath_x86%\aspnet_merge" -o ICM.dll -a "%Depot%\AssetExplorer.Web" -copyattrs "%~1..\AssemblyInfo\obj\Release\AssemblyInfo.dll"

La magie est dans

-copyattrs "%~1..\AssemblyInfo\obj\Release\AssemblyInfo.dll", 

il prend les attributs de AssemblyInfo.dll et les copie dans l'ensemble généré.

it helps;)

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