J'ai récemment pris conscience que notre code a plusieurs implémentations d'un analyseur de version (c'est le code pour créer un objet Version à partir d'une chaîne de version). Pensant que c'était une de ces fois où les gens ne pouvaient pas prendre la peine de lire les documents, je me suis dit que je sauterais dans MSDN, trouver la méthode "standard" pour le faire et remplacer les différentes méthodes par des appels à celui-ci. À ma grande surprise, la classe Version n'a pas de méthode Parse, et il n'y en a pas non plus sur Convert ou ailleurs que j'ai cherché. Suis-je juste manquant, ou n'y a-t-il pas de méthode dans l'API .Net pour convertir une chaîne de version en un objet Version. S'il vous plaît noter que j'ai le code pour le faire. En fait, j'ai deux approches différentes qui sont utilisées dans plusieurs méthodes différentes. Ce que je cherche est un dans la bibliothèque standard.Existe-t-il un moyen "standard" d'obtenir une classe CLR Version à partir d'une chaîne?
0
A
Répondre
0
Ce problème est dû au fait que la chaîne de version que nous obtenons de notre matériel n'est pas une chaîne de version "standard". Il est de la forme major.minor.patch (build), plutôt que major.minor.build.patch.
0
Pourriez-vous écrire une méthode d'extension pour un Version.Parse
? De cette façon, ce serait au même endroit.
En C# ...
Version Parse(this Version ver, string Value) {
// your conversion here.
}
En VB ...
Imports System.Runtime.CompilerServices
Module VersionExtensions
<Extension()> _
Public Function Parse(ByVal aVersion As Version, ByVal aValue As String) As Version
' Conversion Here
End Function
End Module
3
Qu'en est-il du constructor that takes a string?
0
Je suppose que la "méthode standard" que vous recherchez est le Version constructor avec un seul paramètre de chaîne?
Questions connexes
- 1. Quel est le meilleur moyen d'extraire une chaîne de version à partir d'un fichier?
- 2. Python: référence à une classe à partir d'une chaîne?
- 3. Pouvez-vous exécuter un binaire .NET version 3 sur une installation CLR version 2?
- 4. Un moyen efficace d'ajouter itérativement à une chaîne en Python?
- 5. Puis-je mettre à niveau SQL Server Express vers une version standard sur une autre machine
- 6. Comment lire une chaîne de longueur 'n' à partir de l'entrée standard
- 7. Analyse de chaîne de date non standard à partir de Stack Overflow dans un .NET DateTime
- 8. Résoudre le type CLR à partir de DataContract.Namespace?
- 9. Qu'est-ce que le standard CLR XML pour un générique concret qui est un tableau?
- 10. Accès à Sql FILESTREAM à partir d'une procédure stockée CLR
- 11. Comment extraire et couper une chaîne de version à partir d'un fichier dans bash
- 12. Obtenir une URL à partir d'une chaîne
- 13. Préfixer une chaîne à une autre chaîne
- 14. Utilisation de DLL mixtes à partir de/clr: projets purs
- 15. Date Boost ajouter un jour, chaîne GMT non standard
- 16. une classe ou un script standard "mot de passe utilisateur oublié" dans un environnement php/mysql?
- 17. Référencement d'une bibliothèque de classe tierce dans une classe SQL Clr
- 18. Exécution du code python à partir de l'application Cocoa standard
- 19. Existe-t-il un moyen standard d'implémenter des événements "Vetoable"?
- 20. Ajouter un élément à une chaîne [] tableau
- 21. Comment créer une instance à partir d'une chaîne en C#?
- 22. Existe-t-il un meilleur moyen d'échapper à cette chaîne?
- 23. Existe-t-il un moyen de modifier une classe dans une méthode de classe en Python?
- 24. Lancer une classe et appeler une fonction à partir d'une classe sœur?
- 25. Existe-t-il un moyen d'ajouter une version spécifique d'un fichier à l'index git?
- 26. Un moyen facile de rechercher une chaîne pour les chaînes
- 27. Le moyen le plus rapide d'écrire une chaîne sur Windows?
- 28. classe PHP ne reviendra pas à une chaîne
- 29. moyen sûr pour initialiser une classe dérivée
- 30. Existe-t-il un moyen d'appeler une méthode Class privée à partir d'une instance dans Ruby?