Вопрос

в ASP.NET MVC 5 Webrole I'm с использованием базы данных Maxmind Geo IP, API, чья API использует такую строку:

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

нужен полный физический путь, относительный путь не работает. Вопрос в том, что развертывание Webrole в облаке, как я могу получить базу данных?

Ввод через удаленное подключение в экземпляре, я вижу, что файл там и путь:

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

Но это не работает, и у меня есть исключение не удалось найти файл 'e: \ sitesroot \ 0 \ содержимое \ db.mmdb'.

Как я могу сделать?Должен ли я использовать BLOB? База данных должна быть быстрой доступной, поскольку его можно было бы назвать сотнями миллионов раз в день, я не знаю, может ли BLOB поддерживать эти объемы одновременного соединения, поэтому я предпочитаю иметь его в экземпляре VM. Спасибо

Это было полезно?

Решение

Использование файловой БД ДБ в облаке Webrole является действительно плохой идеей - каждый раз, когда вы развертываете Webrole, DB будет перезаписаться.Нет простого способа гарантировать параллелизм.Тем не менее, было бы лучше использовать Azure SQL или MySQL (или любую другую базу данных, не подлежащую перезаписе, каждый раз, когда вы развертываете новый код. BLOB OK для хранения файлов, но не динамические дб и ограничения по размерупроблема также.

Чтобы получить доступ к файлам в папке содержимого, хотя см. Это поэтому пост .

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top