Après avoir créé un site Web, je remarque qu'il définit la version asp.net sur 1.1. Je voudrais dans le code changer cela à la version 2.0.50727. J'ai trouvé que dans la propriété ScriptMaps il y a une liste de chaînes de toutes les extensions de fichier et du mappage de code. Mais je n'ai pas compris comment changer toutes les valeurs qui sont connectées à .net? Ou est-il un moyen de lui dire d'utiliser une autre version avec .invoke?IIS 6.0 Propriété DirectoryEntry ScriptMaps et définition de la version .Net
Répondre
DirectoryEntry sited = new DirectoryEntry(string.Format("IIS://localhost/w3svc/{0}/Root", websiteID.ToString()));
sited.Properties["AccessRead"].Add(true);
PropertyValueCollection testScriptMap = sited.Properties["ScriptMaps"];
object[] allValues = (object[])testScriptMap.Value;
object[] newValues = new object[allValues.Length];
string oldVersion = "v1.1.4322";
string newVersion = "v2.0.50727";
for (int i = 0; i < allValues.Length; i++)
{
if (allValues[i] is string)
{
string temp = allValues[i] as string;
if (temp.Contains(oldVersion))
{
newValues[i] = temp.Replace(oldVersion, newVersion);
}
else
{
newValues[i] = allValues[i];
}
}
else
{
newValues[i] = allValues[i];
}
}
testScriptMap.Value = newValues;
sited.CommitChanges();
Après essais et erreurs, j'ai trouvé une solution. J'ai pris tous les objets dans le site créé et fait une copie où j'ai changé la partie de la version de la chaîne de chemin d'accès. Ensuite, j'ai défini la propriété value de l'objet scriptMaps pour pointer vers le nouveau tableau d'objets mis à jour.
Un moyen facile est d'exécuter « aspnet_regiis -i
». Le fichier aspnet_regiis.exe
sera situé à - C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe
.
Alternativement, vous pouvez prendre la dure, et jeter un oeil à un article sur modification of IIS Metabase.
Prendre le chemin plus difficile, pour moi, est beaucoup plus froid que celui facile!
La commande suivante installe la version ASP.NET associée à l'outil et met à jour les cartes de script de toutes les applications ASP.NET existantes. Notez que seules les applications actuellement mappées à une version antérieure d'ASP.NET sont affectées.
Aspnet_regiis -i
le Aspnet_regiis.exe est sous le chemin suivant:
C: \ WINDOWS \ Microsoft.NET \ Framework \ "dot net la version que vous voulez changer"
dans votre cas sera sous v2.0.50727:
C: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0.50727
source: ASP.NET IIS Registration Tool
- 1. IIS 6.0 Liste des propriétés DirectoryEntry
- 2. IIS/DirectoryEntry/ASP.NET - Échec de la connexion
- 3. Version IIS de la machine de développement et déploiement Version IIS
- 4. Comment obtenir la version IIS via .NET
- 5. Définition du compte d'utilisateur dans le pool d'applications IIS 6.0
- 6. Comment faire pour supprimer la propriété de répertoire Web IIS 6 en utilisant directoryentry en C#
- 7. La propriété memberOf de DirectoryEntry renvoie le chemin complet
- 8. Monitor IIS 6.0
- 9. IIS 6.0 Méthodes de débogage
- 10. Retard de recouvrement chevauchant IIS 6.0
- 11. Définition de la propriété Groovy
- 12. Déploiement du projet mvc sur iis 6.0
- 13. Quelle version du connecteur mysql pour .NET accèdera MySql 6.0?
- 14. Authentification de base avec IIS 6.0 et Asp.Net
- 15. Dépassement de pile sur IIS 6.0
- 16. WCF ne fonctionne pas sous IIS 6.0
- 17. ASP .NET et IIS
- 18. Utilisation de ProcessModelInfo avec IIS 6.0
- 19. Problème d'arrêt de pool d'applications IIS 6.0
- 20. Définition de la version ASP.NET via MSBUILD
- 21. IIS 5.1/6.0 Différences avec DataGrid et SqlDataSource Actualiser
- 22. Version C# et .NET Framework Version?
- 23. Différents paramètres de dépendance pour la configuration de la version 'Debug' et 'Release' dans VisualC++ 6.0
- 24. IIS 6.0 Autorisations d'accès au partage distant
- 25. php cURL IIS 6.0 Windows Server 2003
- 26. WCF MSMQ obligatoire dans IIS 6.0
- 27. IIS 6.0 Authentification intégrée: 401.1 avec IE7
- 28. classique ASP dans IIS 6.0 n'échelle
- 29. Configuration du répertoire virtuel IIS 6.0
- 30. IIS 6.0 plantage du pool d'applications
Le lien est mort. –