Contexte
Une carte doit être utilisée dans un projet de développement WPF. La carte Google initialement utilisée a été bloquée, et maintenant la carte Baidu est utilisée. L'API JavaScript de Baidu Map est utilisée pour appeler l'application Baidu Map. Sur la plateforme WPF, Webbroswer est utilisé pour l'accès. Dans le processus, Webbroswer.Navigate est utilisé pour charger le fichier html. accède au fichier en cours d'exécution par défaut. Les ressources sous le dossier sont également les ressources sous /bin/Debug.
Nous pouvons résoudre ce problème en plaçant notre fichier html directement sous le fichier Debug. Comment accéder au dossier en cours d'exécution ? Se référer à l'Annexe 1. Le problème peut être résolu à ce stade, mais lorsque notre projet applique le contrôle de version Git, Git ne mettra pas le contenu du fichier /bin/Debug dans le contrôle de version par défaut, c'est-à-dire si d'autres clonent via le contrôle de version. notre projet, il y a un manque de fichiers html dans le projet. Le problème auquel nous devons faire face maintenant est de savoir comment utiliser Uri pour charger des ressources sous des chemins relatifs.
Solution
Solution 1 :
Accédez toujours aux ressources du dossier actuel En définissant les propriétés des ressources, copiez les ressources dans /bin/Debug du projet lors de la compilation. La méthode spécifique consiste à ajouter vos ressources au projet, puis à modifier ses propriétés de "Copier vers le répertoire de sortie" à "Toujours copier" pour générer l'opération "contenu". Pour les méthodes spécifiques, veuillez vous référer à
http:/. /blog.csdn .net/yulongguiziyao/article/details/25131597
Solution 2 :
Accédez via des chemins relatifs, placez vos ressources dans le dossier du projet, puis accédez au niveau supérieur en obtenant "../.. /" répertoire à obtenir. Par exemple, ajoutez le dossier ThirdParty au projet et ajoutez la ressource BMap.html souhaitée sous ThirdParty dans le projet. Je peux accéder à la ressource avec la déclaration suivante :
new Uri(System.Environment.CurrentDirectory + @"/../../ThirdParty/BMap.html", UriKind.RelativeOrAbsolute)
System.Environemnt.CurrentDirectory C'est-à-dire le répertoire /bin/Debug, et vous revenez au répertoire du projet via /../../ De cette façon, il y a un répertoire ThirdParty sous le répertoire du projet, et nous pouvons accéder directement à cette ressource. En même temps, cette ressource peut également être publiée via le contrôle de version. Une fois sortie, le problème sera résolu.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!