ASP.NET удостоверение запрашивает локальную БД в App_Data - PullRequest
0 голосов
/ 19 апреля 2019

Я обнаружил ошибку , запрашивающую локальную базу данных App_Data , однако я не использую локальную базу данных в своем проекте и не работаю с оперативной базой данных на сервере.

enter image description here

Ниже приведены инструкции по созданию моего сайта:

1 - Новое веб-приложение ASP.Net -> MVC - Аутентификация отдельных пользователей

2 - Запустите приложение и зарегистрируйте нового пользователя (именно здесь, я думаю, начинается проблема) - поскольку в этот момент оно создало локальную базу данных в App_Data

3 - Создайте базу данных SQL Server 2017, используяSQL Server Management Studio и добавьте мои таблицы

4- Импортируйте БД в проект как модель данных объекта ADO.Net -> EF Designer из базы данных (с новой строкой соединения)

5 - ОбновитеDefaultConnection для связи с новым db

6- Запустите проект и зарегистрируйте нового пользователя (таблицы идентификаторов, созданные в новой БД). Я не импортировал таблицы идентификаторов в ADO.Net Entity Data Model

7 - загрузить БД толькоne на smarterasp.net

8- Обновление строки подключения до новой онлайн-базы данных

9- Продолжить работу над сайтом…

10- Опубликовать сайт -> и этозапрашивал локальные базы данных App_Data как приложенные!

В проекте нет ссылок на локальные базы данных.Как я могу исправить эту локальную вещь БД без создания нового приложения.

    <connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=SQL5041.site4now.net;
                                                Initial Catalog=DB_Name;
                                                User Id=admin;
                                                Password=***;" 
     providerName="System.Data.SqlClient" />
<add name="RP" connectionString="metadata=res://*/RPDatabaseModel.csdl|res://*/RPDatabaseModel.ssdl|res://*/RPDatabaseModel.msl;
                                    provider=System.Data.SqlClient;
                                    provider connection string=&quot;Data Source=SQL5041.site4now.net;Initial Catalog=DB_Name;User Id=admin;Password=***; MultipleActiveResultSets=true;&quot;" 
     providerName="System.Data.EntityClient" />

1 Ответ

0 голосов
/ 19 апреля 2019

Попробуйте отключить ваш ролевой менеджер.В вашем файле web.config удалите весь раздел roleManager и замените его следующим:* И строка подключения, подобная этой:

<add name="LocalSqlServer" 
    connectionString="...localdb..." 
    providerName="System.Data.SqlClient"/>

Таким образом, оставляя там записи диспетчера ролей, Asp.Net начинает искать в этой локальной базе данных до IdentityDbContext.Удаление записей означает, что он пытается штрафовать запись и терпит неудачу.Поэтому единственное решение - полностью его отключить.

...