Question

dans un ASP.NET MVC 5 WEBROLE I`M Utilisation de la base de données Maxmind Geo IP dont l'API utilise une chaîne comme celle-ci:

  var reader = new DatabaseReader    (@"C:\Users\User\Source\Workspaces\myproject\Contents\db.mmdb");

Il a besoin d'un chemin physique complet, un chemin relatif ne fonctionne pas. La question est la suivante: Déploiement du webrole dans le nuage, comment puis-je récupérer la base de données?

entrer via une connexion à distance Dans l'instance, je peux voir que le fichier est là et que le chemin est:

var reader = new DatabaseReader(@"E:\sitesroot\0\Contents\db.mmdb");

Mais cela ne fonctionne pas et j'ai une exception, aucune exception n'a pas pu trouver le fichier 'E: \ SitesROOt \ 0 \ Sommaire \ db.mmdb'.

Comment puis-je faire?Devrais-je utiliser un blob? La base de données doit être rapide accessible car elle pourrait être appelée des centaines de millions de fois par jour, je ne sais pas si le blob peut prendre en charge cette quantité de connexions simultanées, donc je préfère l'avoir dans l'instance VM. Merci

Était-ce utile?

La solution

Utilisation d'un dB basé sur un fichier dans une brouillard de CloudService est une très mauvaise idée - chaque fois que vous déployez la barre, le DB sera écrasé.Il n'y a pas de moyen facile de garantir la concurrence.Cela dit, il serait préférable d'utiliser Azure SQL ou MySQL (ou toute autre base de données non soumise à être écrasée à chaque fois que vous déployez un nouveau code. Le blob est correct pour le stockage de fichiers, mais pas DBS dynamique et les limitations de taille vous permettront de vous mettre dansproblèmes aussi.

Pour accéder aux fichiers dans le dossier du contenu, voir cette donc post .

Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Contents");

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