Форум программистов, компьютерный форум, киберфорум
Наши страницы
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.91/11: Рейтинг темы: голосов - 11, средняя оценка - 4.91
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
1

Не удается установить соединение с базой данных сервера SQL Server

04.08.2015, 08:24. Просмотров 2195. Ответов 11
Метки нет (Все метки)

Уважаемое сообщество прошу вашей помощи в решении данной проблемы!!!

Пишу приложение на ASP.NET MVC понадобилось вывести список всех зарегистрированных юзеров. Для вывода списка решил воспользоваться Membership.GetAllUsers(), но получаю исключение:
При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с определенным экземпляром. Сервер не найден или недоступен. Убедитесь, что имя экземпляра указано правильно и что на SQL Server разрешены удаленные соединения. (provider: SQL Network Interfaces, error: 26 - Ошибка при обнаружении указанного сервера или экземпляра)
0
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.08.2015, 08:24
Ответы с готовыми решениями:

Не удаётся установить соединение с базой данных сервера SQL server.
Возникла следующая ошибка . Не удается установить соединение с базой данных сервера SQL Server. в...

Соединение с базой данных
Добрый день, изучаю mvc по след ссылке : http://metanit.com/sharp/mvc.php Пытаюсь скомпилировать...

Не удается найти имя сервера Sql Server
Не могу найти имя сервера SQL сервера, даже переустановил SQL. Не получиться Даже с помощью...

Соединение с базой данных MS SQL
Господа форумчане, требуется помощь! Задача состоит в следующем: На компьютере есть база данных MS...

Не удается установить VS2010 (SQL Server Express)...
Когда я ставлю SV2010 Utimate rus.. то в конце установки выдает сообщения что установка прошла...

11
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
04.08.2015, 10:53 2
Vladimir1981, проверь свою строку подключения, работает ли она и верно ли в ней база и сервер указаны
0
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
04.08.2015, 15:58  [ТС] 3
строка подключения:
XML
1
2
3
<connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-SDC-20150804171038;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-SDC-20150804171038.mdf" providerName="System.Data.SqlClient" />
  </connectionStrings>
Имя сервера: (localdb)\v11.0
0
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
04.08.2015, 16:24 4
проверь работает ли она, через менеджемнт студию или через вижуал студию (обозреватель серверов > создать новое подключение)
0
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
04.08.2015, 16:56  [ТС] 5
Строку проверил "Test connection succeeded". Соединение есть. Не знаю как картинку вставить, что бы показать.

Добавлено через 14 минут
Простите за глупый вопрос:
Membership.GetAllUsers() должен нормально работать со строкой в web.config или же нужно писать что то вроде этого:

C#
1
 WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
0
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
04.08.2015, 19:15 6
Vladimir1981, по умолчанию в проекте создается фильтр InitializeSimpleMembershipAttribute, который отвечает за то что бы база была создана, и проинициализирована строка подключения, в нем есть пример кода как это должно быть, там как раз эта строка и есть (это все нужно если вы используете стандартный мембершип и ничего своего не писали), и да она нужна
0
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
04.08.2015, 19:27  [ТС] 7
С этой строкой подключения метод Membership.GetAllUsers() не поддерживается! работает только метод GetUser(). А мне надо список всех юзеров. Как же получить список всех зарегистрированных юзеров?, подскажите пожалуйста.
0
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
04.08.2015, 19:57 8
Vladimir1981, там же есть готовый контекст , можно напрямую вытащить
C#
1
2
3
4
                    using (var context = new UsersContext())
                    {
                        var users = context.UserProfiles;
                    }
а как этот Membership.GetAllUsers(); не работает, что пишет?
0
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
04.08.2015, 20:06  [ТС] 9
Если использовать строку:
C#
1
WebSecurity.InitializeDatabaseConnection("DefaultConnection", "UserProfile", "UserId", "UserName", autoCreateTables: true);
То получаю исключение: Указанный метод не поддерживается.
Если не использовать строку, то получаю исключение:
При установлении соединения с SQL Server произошла ошибка, связанная с сетью или с определенным экземпляром. Сервер не найден или недоступен. Убедитесь, что имя экземпляра указано правильно и что на SQL Server разрешены удаленные соединения. (provider: SQL Network Interfaces, error: 26 - Ошибка при обнаружении указанного сервера или экземпляра)

Добавлено через 1 минуту
Список юзеров получить надо в контроллере, а затем передать в вид
0
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
04.08.2015, 20:18 10
Vladimir1981, получается от в стандартном мембершипе не реализован, или писать свои провайдеры, или использовать другие готовые или напрямую с контекстом работать, как написано выше
1
Vladimir1981
0 / 0 / 0
Регистрация: 13.02.2015
Сообщений: 6
05.08.2015, 19:40  [ТС] 11
Спасибо за ответ, но с контекстом получается вывести UserName и UserID a как вывести их роли?

Добавлено через 20 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@foreach (var user in ViewBag.users)
{
    var roles = Roles.GetRolesForUser(user.UserName);
  
    
 <p>
        @user.UserName
        <br />
    
        @foreach (var role in roles)
        {
            <span>@role</span>
        }
    </p>
}
В этом коде получаю исключение: не удаётся соединиться с базой данных

Добавлено через 25 секунд
строка 3

Добавлено через 22 часа 30 минут
Всем привет!!!

Нашёл решение. Нужно было просто декорировать метод атрибутом
C#
1
[InitializeSimpleMembershipAttribute]
и всё заработало!!!
0
Metall_Version
2129 / 1266 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
05.08.2015, 20:34 12
Цитата Сообщение от Vladimir1981 Посмотреть сообщение
Нужно было просто декорировать метод атрибутом
так я вам говорил об этом
лучше сделать глобальным фильтром, т.к. база может юзаться и в других контроллерах

Цитата Сообщение от Metall_Version Посмотреть сообщение
по умолчанию в проекте создается фильтр InitializeSimpleMembershipAttribute, который отвечает за то что бы база была создана, и проинициализирована строка подключения, в нем есть пример кода как это должно быть, там как раз эта строка и есть (это все нужно если вы используете стандартный мембершип и ничего своего не писали), и да она нужна
0
05.08.2015, 20:34
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.08.2015, 20:34

Можно ли установить соединение с файлом XML как с базой данных?
У меня есть программа, которая коннектится к БД Oracle и работает с данными. Также она может...

Как установить соединение с базой данных находящейся на серваке со своей машины?
Если вопрос не из этого раздела прошу громко не ругаться ;-)) как установить соединение с базой...

Соединение с SQL Server: Ошибка при обнаружении указанного сервера или экземпляра
Помогите пожалуста исправить неполучается соеденится с SQL Server.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.