7
votes

Pré-compiler pendant les retours de construction Erreur AspnetCompiler (0,0): Erreur Aspruntime: Startindex ne peut pas être plus grand que la longueur de la chaîne

Cette question est similaire, mais je ne pense pas la même chose

msbuild aspnetcompiler ASPNeTruntime startindex error p>

J'ai une application Web que j'essaie de publier à l'aide de Visual Web Developer 2010 Express. P>

Si je publie, localement ou au serveur de production, il ne fait pas de différence et décocher précompile lors de la publication code> Tout fonctionnera bien, cela publiera et travaille, sans erreur de temps d'exécution. P>

Cependant, si je vérifie ce qui précède, alors je reçois un ERREUR: P>

Error   1   startIndex cannot be larger than length of string.  ASPNETCOMPILER  0   0   bms


0 commentaires

7 Réponses :


0
votes

J'ai tout de suite commencé à obtenir cette même erreur. Je ne sais pas ce qui le cause, mais j'ai trouvé un peu de solution de contournement.

Quitter Visual Studio (je suis sur VS2012) Supprimer votre dossier Obj Ouvrez Visual Studio et réessayez.


0 commentaires

0
votes

En plus de la suggestion de Wayne Brantley de supprimer le dossier OBJ, j'ai également couru " propre " suivi de " reconstruit " à l'aide de Visual Studio. Cela corrige le problème pour moi.


0 commentaires

0
votes

Cela a été causé à la publication d'un dossier qui possédait une ancienne version publiée. I.E. Choisissez la "Supprimer tous les fichiers existants avant de publier" Option " sur les Settoites de profil de publication que vous utilisez.

I.e. Assurez-vous d'avoir un répertoire de construction / publication de la cible propre de manière à ce qu'il n'interfère pas avec le compilateur, etc.

Mise à jour: Vérifiez également qu'il n'y a pas de dossier publié dans l'espace de votre solution de travail, par ex. Assurez-vous de publier en dehors de l'arbre de votre solution actuelle, loin.


2 commentaires

@Jphellemons Vérifiez également qu'il n'y a pas de dossier publié précédemment dans l'espace de votre solution de travail, par exemple. Assurez-vous de publier en dehors de l'arbre de votre solution actuelle, loin.


Merci pour cet ajout



3
votes

Pour moi, nettoyer et reconstruire, supprimer le dossier .OBJ, etc. n'a pas aidé à résoudre l'erreur.

Ma solution était comme suit

dans VS2013, j'ai cliqué par le droit de cliquer sur le projet dans l'explorateur de solutions et sélectionné "Publier", puis sélectionnés "Paramètres" dans la boîte de dialogue Publish. Ensuite, j'ai élargi 'options de publication de fichiers'. Ensuite, j'ai cliqué sur le lien Configurer à côté de "Précompile lors de la publication". Ensuite, j'ai désélectionné "Autoriser le site précompilé d'être mis à jour". Puis la publication a travaillé pour moi. Si je défie cette sélection, je pouvais toujours publier après. J'espère que cela aide.


1 commentaires

Cela fixe pour moi .. J'ai dû désélectionner le "Autoriser le site précompilé d'être mis à jour" pour faire fonctionner les choses !! Merci :)



0
votes

J'ai eu un problème très similaire. Je pourrais courir l'assistant de publication dans Visual Studio 2012 Pro et publierait OK, mais lorsque vous l'exécutez avec MSBuild sur la ligne de commande, elle donnerait à l'erreur "Startindex ne peut pas être plus grande que la longueur de la chaîne"

J'ai découvert que c'était parce que j'appelle Msbuild sans spécifier le mode de configuration. Une fois que j'ai spécifié la configuration de version, elle fonctionnait.

Voici comment je l'ai eu pour travailler pour mon script de construction

Msbuild "mysolution.sln" / Propriété: Configuration = Libération / Propriété: DeployonBuild = "vrai" / Propriété: PublishProfile = "mypublishprofile"

espère que cela aide.


0 commentaires

0
votes

J'ai également fait face au même problème, puis j'ai suivi les étapes.

  • Ouvrez la console.
  • aller au répertoire Framework .NET
  • C: \ Windows \ Microsoft.net \ Framework64 \ V4.0.30319>
  • exécuter la commande ci-dessous

    c: \ windows \ microsoft.net \ fricher64 \ v4.0.30319> aspnet_compiler.exe -v / -p c: \ utilisateurs \ Muralidharand \ Source \ Espaces de travail \ Personnel \ Erpv1 \ Erpweb \ obj \ Debug \ ASPnetCompilemerge \ Source -U -D C: \ Users \ Muralidharand \ Source \ Espaces de travail \ Personnel \ Erpv1 \ Erpweb \ Obj \ Debug \ Aspnetcompilemerge \ TempBuildDir -errorstack

    • Revenez ensuite à Visual Studio, nettoyez-vous, reconstruisez et publiez. Ceci est travaillé pour moi dans la VS 2013 Professional Edition (SP3).

0 commentaires

1
votes

Bien que cette question ait été posée il y a longtemps, j'ai récemment rencontré cette erreur.

Dans mon cas, le problème était que j'avais compressé le lecteur où le projet a été stocké à l'aide de la fonction Windows pour économiser de l'espace.

Après avoir décompressé le dossier dans lequel le projet Web a été stocké, l'erreur a disparu.

J'espère que cette aide.


0 commentaires