2014-12-15 3 views
1

Я создал простое приложение ASP.NET MVC со встроенной индивидуальной аутентификацией пользователя.
Когда я начинаю локальную отладку (используя VS2013 с iisExpress), я могу отлично зарегистрироваться и войти в систему для новых пользователей.Развертывание базы данных пользовательских данных

Затем я развернул проект до бесплатного хостинга Somee.com, используя опцию публикации VS и вручную развернув папку App_Data. Здесь я могу просматривать страницы и действия WebAPI, но я не могу зарегистрироваться или войти в системе больше пользователей, я получил ошибку:

[Win32Exception (0x80004005): The system cannot find the file specified]

[SqlException (0x80131904): A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 52 - Unable to locate a Local Database Runtime installation. Verify that SQL Server Express is properly installed and that the Local Database Runtime feature is enabled.)]

System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection) +414
......
......

Я думаю, это потому, что не может найти файлы MDF, который содержит данные пользователей или IIS не может его прочитать, но как я могу это решить?
Должен ли я настраивать таблицу пользователей в базе данных SqlServer вместо использования локального mdf?

Это бесполезно размещать мой код, потому что я не изменяю ни одной строки того, что является шаблоном визуальной студии.
Спасибо!

+0

Somee дает вам одну бесплатную базу данных sql с бесплатным пакетом. Вы можете использовать это, чтобы создать свои таблицы аутентификации. – Slappywag

+0

Хорошо, я уже использую какой-то бесплатный db для пары таблиц, я добавлю к ним пользовательские таблицы! – AndreaGrnd

ответ

1

В шаблоне используется функция локальной базы данных SQL Server, для которой на компьютере установлен SQL Server (с VS вы автоматически устанавливаете SQL Server Express на своей машине разработки).

На мой взгляд, вы должны настроить SQL Server (Express должен сделать это на данный момент) и изменить строку подключения в вашем web.config, чтобы указать на новый SQL Server (или оставить его так же, как и при развертывании база данных на том же компьютере, что и на веб-сайте).

Если вы используете функцию Публикация VS, вы должны получить подсказку в мастере при рассмотрении конфигурации, которую местная БД не будет работать, если база данных находится на удаленной машине.

0

"Data Source=....;Initial Catalog=....;Integrated Security=..."

Измените это на базу данных, предоставленную string.It должно быть что-то в этом роде;

"workstation id=.....;packet size=....;user id=....;pwd=....;data source=....;persist security info=False;initial catalog=....." Also if it is first time doing this you can encounter with a lot of errors which cant be found on internet easily

Смежные вопросы