I was using an .mdf
for connecting to a database
and entityClient
. Now I want to change the connection string so that there will be no .mdf
file.
Is the following connectionString
correct?
<connectionStrings>
<!--<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;AttachDbFilename=|DataDirectory|NData.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />-->
<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;Initial Catalog=NData;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
Because I always get the error:
The underlying provider failed on Open
asked Mar 19, 2010 at 4:36
senzacionalesenzacionale
20.4k67 gold badges202 silver badges316 bronze badges
7
I had this error and found a few solutions:
Looking at your connection string, it looks valid. I found this blog post, the problem here is that they were using Integrated Security. If you are running on IIS, your IIS user needs access to the database.
If you are using Entity Framework with Transactions, Entity Framework automatically opens and closes a connection with each database call. So when using transactions, you are attempting to spread a transaction out over multiple connections. This elevates to MSDTC.
(See this reference for more information.)
Changing my code to the following fixed it:
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}
answered Jun 21, 2010 at 2:17
Christian PayneChristian Payne
7,0825 gold badges38 silver badges59 bronze badges
8
context.Connection.Open()
didn’t help solving my problem so I tried enabling «Allow Remote Clients» in DTC config, no more error.
In windows 7 you can open the DTC config by running dcomcnfg, Component Services -> Computers -> My Computer -> Distributed Transaction Coordinator -> Right click to Local DTC -> Security.
Domysee
12.7k10 gold badges53 silver badges84 bronze badges
answered Oct 26, 2010 at 10:28
keremkerem
2,6991 gold badge32 silver badges37 bronze badges
2
You should see innerException to see what the inner cause of throwing of
error is.
In my case, the original error was:
Unable to open the physical file «D:Projects2xCUxCUApp_DataxCUData_log.ldf». Operating system error 5: «5(Access is denied.)».
An attempt to attach an auto-named database for file D:Projects2xCUxCUApp_DataxCUData.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
which solved by giving full permission to current user for accessing related mdf
and ldf
files using files’ properties.
answered May 5, 2015 at 17:52
MajidMajid
13.8k15 gold badges77 silver badges113 bronze badges
I found the problem was that I had the server path within the connection string in one of these variants:
SERVERSQLEXPRESS
SERVER
When really I should have:
.SQLEXPRESS
For some reason I got the error whenever it had difficulty locating the instance of SQL.
answered Jul 21, 2011 at 10:19
dooburtdooburt
2,99010 gold badges41 silver badges59 bronze badges
3
This is common issue only. Even I have faced this issue. On the development machine, configured with Windows authentication, it is worked perfectly:
<add name="ShoppingCartAdminEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.SQlExpress;initial catalog=ShoppingCartAdmin;Integrated Security=True;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
Once hosted in IIS with the same configuration, I got this error:
The underlying provider failed on Open
It was solved changing connectionString
in the configuration file:
<add name="MyEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=MACHINE_NameSQlExpress;initial catalog=ShoppingCartAdmin;persist security info=True;user id=sa;password=notmyrealpassword;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
Other common mistakes could be:
- Database service could be stopped
- Data Source attributes pointing to a local database with Windows authentication and hosted in IIS
- Username and password could be wrong.
answered Sep 26, 2013 at 11:52
JaisankarJaisankar
4531 gold badge5 silver badges10 bronze badges
1
When you receive this exception, make sure to expand the detail and look at the inner exception details as it will provide details on why the login failed. In my case the connection string contained a user that did not have access to my database.
Regardless of whether you use Integrated Security (the context of the logged in Windows User) or an individual SQL account, make sure that the user has proper access under ‘Security’ for the database you are trying to access to prevent this issue.
answered Jan 3, 2013 at 16:03
atconwayatconway
20.5k29 gold badges153 silver badges228 bronze badges
7
The SQL Server Express service were not set tostart automatically.
1) Go to control panel
2) Administrative Tools
3) Service
4) Set SQL Server express to start automatically by clicking on it
5) Right click and start the service
I hope that will help.
answered Feb 1, 2013 at 20:05
This can also happen if you restore a database and the user already exists with different schema, leaving you unable to assign the correct permissions.
To correct this run:
USE your_database
EXEC sp_change_users_login 'Auto_Fix', 'user', NULL, 'cf'
GO
EXEC sp_change_users_login 'update_one', 'user', 'user'
GO
answered Nov 5, 2012 at 15:46
79E0979679E09796
2,1101 gold badge20 silver badges33 bronze badges
1
Make sure that each element value in the connection string being supplied is correct. In my case, I was getting the same error because the name of the catalog (database name) specified in the connection string was incorrect.
answered Jan 30, 2014 at 20:28
I had a similar issue with exceptions due to the connection state, then I realized I had my domain service class variable marked as static (by mistake).
My guess is that once the service library is loaded into memory, each new call ends up using the same static variable value (domain service instance), causing conflicts via the connection state.
I think also that each client call resulted in a new thread, so multiple threads accessing the same domain service instance equated to a train wreck.
Matt Fenwick
48k22 gold badges126 silver badges191 bronze badges
answered Feb 27, 2012 at 19:52
James WilkinsJames Wilkins
6,7252 gold badges47 silver badges73 bronze badges
1
I had the same problem but what worked for me was removing this from the Connection String:
persist security info=True
answered Apr 17, 2013 at 13:47
FV01FV01
113 bronze badges
0
I had a similar error with the inner exception as below:
operation is not valid for the state of the transaction
I could resolve it by enabling DTC security settings.
Go To Properties of DTC, under Security Tab, check the below
- Network DTC Access
- Allow RemoteClients
- Transaction Manager Communication
- Allow Inbound
- Allow Outbound
Beryllium
12.8k10 gold badges56 silver badges86 bronze badges
answered Sep 30, 2013 at 15:35
If you happen to get this error on an ASP.NET web application, in addition to other things mentioned check the following:
- Database User Security Permissions (which users are allowed access to your database.
- Check your application pool in IIS and make sure it’s the correct one that is allowed access to your database.
answered Nov 4, 2013 at 16:49
alexkalexk
1,1141 gold badge10 silver badges16 bronze badges
I got rid of this by resetting IIS, but still using Integrated Authentication
in the connection string.
answered Aug 28, 2012 at 22:09
0
Defining a new Windows Firewall rule for SQL Server (and for port 1433) on the server machine solves this error (if your servername, user login name or password is not wrong in your connection string…).
answered May 9, 2013 at 10:28
Gökhan YılmazGökhan Yılmaz
751 gold badge1 silver badge6 bronze badges
NONE of the answers worked for me
I think that some of us all make silly mistakes, there are 100 ways to fail …
My issue was new project, I setup all the configuration in another project, but the caller was a Web Api project in which I had to copy the same connection string in the Web api project.
I think this is crazy considering I was not even newing up dbcontext or anything from the web api.
Otherwise the class library was trying to look for a Database named
TokenApi.Core.CalContext
of which my project is named TokenApi.Core
and the CalContext
is the name of the connection string and the file name
answered Feb 28, 2017 at 0:42
Tom StickelTom Stickel
19.5k6 gold badges111 silver badges113 bronze badges
I was searching all over the web for this problem. I had the wrong name in the connection string, please check you connection string in web.config. I had name="AppTest"
but it should have been name="App"
.
In my AppTestContext.cs file I had:
public AppTestContext() : this("App") { }
Wrong connection string:
<add connectionString="Data Source=127.0.0.1;Initial Catalog=AppTest;Integrated Security=SSPI;MultipleActiveResultSets=True" name="AppTest" providerName="System.Data.SqlClient" />
Right connection string:
<add connectionString="Data Source=127.0.0.1;Initial Catalog=AppTest;Integrated Security=SSPI;MultipleActiveResultSets=True" name="App" providerName="System.Data.SqlClient" />
S1r-Lanzelot
2,1763 gold badges30 silver badges45 bronze badges
answered Apr 16, 2018 at 11:04
A common mistake that I did because I was moving application from once pc to another and none of the above worked was that I forgot to copy the connection string to both App.Config and Web.Config!
answered May 18, 2013 at 18:54
rikketrikket
2,3377 gold badges46 silver badges74 bronze badges
I had a similar problem: In my test-cases executions I always got this error. I found out, that my «Distributed Transaction Service» was not started (run: services.msc -> start «Distributed Transaction Service» (best to set it to start automatic)). After I did that, it worked like a charm…
answered Jul 25, 2014 at 9:14
iberiber
511 silver badge4 bronze badges
I was also facing the same issue. Now I have done it by removing the user name and password from the connection string.
answered Aug 4, 2013 at 13:52
For me it was just a simple mistake:
I used Amazon EC2, and I used my elastic IP address in the connection string, but when I changed IP addresses I forgot to update my connection string.
answered Dec 9, 2013 at 17:23
I had this error suddenly happen out of the blue on one of our sites. In my case, it turned out that the SQL user’s password had expired! Unticking the password expiration box in SQL Server Management Studio did the trick!
answered May 2, 2014 at 14:01
Connell♦Connell
13.8k10 gold badges58 silver badges92 bronze badges
I had the same issue few days ago, using «Integrated Security=True;» in the connection string you need to run the application pool identity under «localsystem» Sure this is not recommended but for testing it does the job.
This is how you can change the identity in IIS 7:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
answered Jan 17, 2015 at 19:25
GabrielGabriel
2,01114 silver badges14 bronze badges
In IIS set the App Pool Identity As Service Account user or Administrator Account or ant account which has permission to do the operation on that DataBase.
answered Sep 16, 2015 at 15:07
Jaydeep ShilJaydeep Shil
1,86522 silver badges20 bronze badges
In my case I had a mismatch between the connection string name I was registering in the context’s constructor vs the name in my web.config. Simple mistake caused by copy and paste
public DataContext()
: base(nameOrConnectionString: "ConnStringName")
{
Database.SetInitializer<DataContext>(null);
}
answered Nov 4, 2015 at 13:23
I had this problem because the Application Pool login this app was running under had changed.
In IIS:
-
Find the Application pool by clicking on your site and going to Basic Settings.
-
Go to Application Pools.
-
Click on your site’s application pool.
-
Click on Advanced Settings.
-
In Identity, enter account login and password.
-
Restart your site and try again.
answered Aug 11, 2016 at 20:02
live-lovelive-love
47.8k22 gold badges234 silver badges201 bronze badges
I have solved this way.
Step 1:
Open Internet Information Service Manager
Step 2:
Click on Application Pools in left navigation tree.
Step 3:
Select your version Pool. In my case, I am using ASP .Net v4.0. If you dont have this version, select DefaultAppPool.
Step 4:
Right click on step 3, and select advanced settings.
Step 5:
Select Identity in properties window and click the button to change the value.
Step 6:
Select Local System in Built-in accounts combo box and click ok.
That’s it. Now run your application. Everything works well.
Codeproject Solution : the-underlying-provider-failed-on-open
answered Jul 25, 2017 at 4:59
Abdur RahimAbdur Rahim
3,95714 gold badges44 silver badges83 bronze badges
1
I get this error when call async EF method from sync Main console (await
was skipped).
Because async opening a connection was for an already disposed data context.
Solve: call async EF methods correctly
answered Jun 6, 2022 at 2:51
Horev IvanHorev Ivan
2713 silver badges9 bronze badges
Я использовал .mdf
для подключения к database
и entityClient
. Теперь я хочу изменить строку подключения так, чтобы не было файла .mdf
.
Правильно ли соответствует connectionString
?
<connectionStrings>
<!--<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;AttachDbFilename=|DataDirectory|NData.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />-->
<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;Initial Catalog=NData;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
Потому что я всегда получаю ошибку:
Недопустимый базовый поставщик при открытии
Ответ 1
У меня была эта ошибка и я нашел несколько решений:
Глядя на вашу строку подключения, она выглядит действительной. Я нашел этот пост в блоге, проблема в том, что они использовали Integrated Security. Если вы работаете в IIS, вашему пользователю IIS необходим доступ к базе данных.
Если вы используете Entity Framework с транзакциями, автоматически открывается Entity Framework и закрывает соединение с каждым вызовом базы данных. Поэтому при использовании транзакций вы пытаетесь распространить транзакцию на несколько соединений. Это поднимается до MSDTC.
(См. эту ссылку для получения дополнительной информации.)
Изменение моего кода на следующее исправлено:
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}
Ответ 2
context.Connection.Open()
не помог решить мою проблему, поэтому я попытался включить «Разрешить удаленные клиенты» в конфигурации DTC, не более ошибок.
В Windows 7 вы можете открыть конфигурацию DTC, запустив dcomcnfg, Службы компонентов → Компьютеры → Мой компьютер → Координатор распределенных транзакций → Щелкните правой кнопкой мыши на Local DTC → Безопасность.
Ответ 3
Я обнаружил, что проблема в том, что у меня был путь к серверу в строке подключения в одном из этих вариантов:
SERVERSQLEXPRESS
SERVER
Когда я действительно должен был:
.SQLEXPRESS
По какой-то причине я получил ошибку, когда ему было трудно найти экземпляр SQL.
Ответ 4
Вы должны увидеть innerException, чтобы увидеть, какая внутренняя причина метания
ошибка есть.
В моем случае исходная ошибка:
Невозможно открыть физический файл «D:Projects2xCUxCUApp_DataxCUData_log.ldf». Ошибка операционной системы 5: «5 (Доступ запрещен.)». Не удалось выполнить попытку присоединения базы данных с автоименованием для файла D:Projects2xCUxCUApp_DataxCUData.mdf. База данных с тем же именем существует или указанный файл не может быть открыт или находится на общем ресурсе UNC.
который разрешен путем предоставления полного разрешения текущему пользователю для доступа к связанным файлам mdf
и ldf
с использованием свойств файлов.
Ответ 5
Это обычная проблема. Даже я столкнулся с этой проблемой. На машине разработки, настроенной с проверкой подлинности Windows, она отлично работает:
<add name="ShoppingCartAdminEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.SQlExpress;initial catalog=ShoppingCartAdmin;Integrated Security=True;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
После размещения в IIS с той же конфигурацией я получил эту ошибку:
Недопустимый базовый поставщик при открытии
Было решено изменить connectionString
в файле конфигурации:
<add name="MyEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=MACHINE_NameSQlExpress;initial catalog=ShoppingCartAdmin;persist security info=True;user id=sa;password=notmyrealpassword;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
Другие распространенные ошибки могут быть:
- Служба базы данных может быть остановлена
- Атрибуты источника данных, указывающие на локальную базу данных с проверкой подлинности Windows и размещенные в IIS
- Имя пользователя и пароль могут быть неправильными.
Ответ 6
Когда вы получаете это исключение, обязательно разворачивайте детали и просматривайте внутренние детали исключений, так как они будут содержать подробную информацию о том, почему логин завершился неудачно. В моем случае строка подключения содержала пользователя, который не имел доступа к моей базе данных.
Независимо от того, используете ли вы интегрированную безопасность (контекст зарегистрированного пользователя Windows) или отдельную учетную запись SQL, убедитесь, что у пользователя есть соответствующий доступ в разделе «Безопасность» для базы данных, к которой вы пытаетесь получить доступ, чтобы предотвратить эту проблему.
Ответ 7
У меня была аналогичная проблема с SQL Server Express Edition на Windows Server 2003. Я просто добавил службу сети в качестве пользователя в безопасности базы данных.
Ответ 8
Это также может произойти, если вы восстановите базу данных, а пользователь уже существует с другой схемой, в результате чего вам не удастся назначить правильные разрешения.
Чтобы исправить этот прогон:
USE your_database
EXEC sp_change_users_login 'Auto_Fix', 'user', NULL, 'cf'
GO
EXEC sp_change_users_login 'update_one', 'user', 'user'
GO
Ответ 9
Служба SQL Server Express не была настроена автоматически.
1) Перейдите на панель управления
2) Администрирование
3) Обслуживание
4) Установите SQL Server express для запуска автоматически, щелкнув по нему
5) Щелкните правой кнопкой мыши и запустите службу
Я надеюсь, что это поможет.
Ответ 10
Убедитесь, что значение каждого элемента в строке подключения правильно. В моем случае я получал ту же ошибку, потому что имя каталога (имя базы данных), указанное в строке подключения, было неправильным.
Ответ 11
У меня была аналогичная проблема с исключениями из-за состояния подключения, тогда я понял, что у меня есть переменная класса домена, помеченная как статическая (по ошибке).
Я предполагаю, что после того, как библиотека сервисов будет загружена в память, каждый новый вызов заканчивается тем же значением статической переменной (экземпляр службы домена), что вызывает конфликты через состояние соединения.
Я также думаю, что каждый вызов клиента привел к появлению нового потока, поэтому несколько потоков, обращающихся к одному и тому же экземпляру службы домена, приравнивались к крушению поезда.
Ответ 12
Я избавился от этого, сбросив IIS, но все еще используя Integrated Authentication
в строке подключения.
Ответ 13
Я опубликовал аналогичную проблему здесь, работая с SQL 2012 db, размещенным на Amazon RDS. Проблема была в строке соединения — у меня было «Имя приложения» и «Приложение» . Как только я удалил их, он сработал.
Entity Framework 5 и Amazon RDS -» Исходный провайдер отказался от Open. «
Ответ 14
Определение нового правила Брандмауэр Windows для SQL Server (и для порта 1433) на серверной машине разрешает эту ошибку (если ваше имя сервера, имя пользователя или пароль не ошибочны в вашей строке подключения…).
Ответ 15
У меня была аналогичная ошибка с внутренним исключением, как показано ниже:
операция недействительна для состояния транзакции
Я мог бы решить эту проблему, включив параметры безопасности DTC.
Перейдите в «Свойства кода DTC», в разделе «Вкладка» Безопасность «, проверьте ниже
- Доступ к сети DTC
- Разрешить удаленные клиенты
- Связь с диспетчером транзакций
- Разрешить входящие
- Разрешить исходящие
Ответ 16
Если вам удастся получить эту ошибку в веб-приложении ASP.NET, в дополнение к другим упомянутым вопросам проверьте следующее:
- Разрешения безопасности пользователя базы данных (пользователям разрешен доступ к вашей базе данных.
- Проверьте пул приложений в IIS и убедитесь, что он правильный, которому разрешен доступ к вашей базе данных.
Ответ 17
У меня возникла эта проблема, потому что был добавлен вход для пула приложений, в котором было запущено это приложение.
В IIS:
-
Найдите пул приложений, нажав на свой сайт и перейдя в «Основные настройки».
-
Перейдите в пулы приложений.
-
Нажмите на пул приложений вашего сайта.
-
Нажмите «Дополнительные настройки».
-
В Identity введите учетную запись и пароль.
-
Перезагрузите свой сайт и повторите попытку.
Ответ 18
У меня была такая же проблема, но то, что сработало для меня, было удаление этого из строки подключения:
persist security info=True
Ответ 19
Общей ошибкой, которую я делал, потому что я перемещал приложение с одного компьютера на другой, и ни одно из вышеперечисленных действий не было, я забыл скопировать строку подключения как в App.Config, так и в Web.Config!
Ответ 20
Я тоже столкнулся с той же проблемой. Теперь я сделал это, удалив имя пользователя и пароль из строки подключения.
Ответ 21
Для меня это была просто ошибка:
Я использовал Amazon EC2, и я использовал свой эластичный IP-адрес в строке подключения, но когда я изменил IP-адреса, я забыл обновить свои строка подключения.
Ответ 22
У меня внезапно возникла эта ошибка внезапно на одном из наших сайтов. В моем случае оказалось, что пароль пользователя SQL истек! Отключить окно срока действия пароля в SQL Server Management Studio сделал трюк!
Ответ 23
У меня была аналогичная проблема: в моих тестах я всегда получал эту ошибку. Я узнал, что моя «Служба распределенных транзакций» не была запущена (запустите: services.msc → start «Distributed Transaction Service» (лучше всего настроить ее на автоматический запуск)). После того, как я это сделал, он работал как шарм…
Ответ 24
Я скопировал файлы базы данных (.mdf/.ldf) в папку App_Data, чтобы избавиться от этого исключения.
Ответ 25
У меня была такая же проблема несколько дней назад, используя «Integrated Security = True»; в строке соединения вам нужно запустить идентификатор пула приложений в разделе «localsystem». Конечно, это не рекомендуется, но для тестирования он выполняет задание.
Вот как вы можете изменить идентификатор в IIS 7:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
Ответ 26
В IIS установите Идентификатор учетной записи пула приложений как учетная запись службы или учетная запись администратора или учетная запись ant, у которой есть разрешение на выполнение операции над этой базой данных.
Ответ 27
В моем случае у меня было несоответствие между именем строки подключения, которое я регистрировал в конструкторе контекста, вместо имени в моем web.config. Простая ошибка, вызванная копированием и вставкой: D
public DataContext()
: base(nameOrConnectionString: "ConnStringName")
{
Database.SetInitializer<DataContext>(null);
}
Ответ 28
У меня такая же ошибка, я обнаружил, что при изменении myStringString
к новому источнику данных
я забыл изменить имя пользователя и passowrd для новой базы данных
Ответ 29
Я также имел эту ошибку, если имя экземпляра SQL Server не указано, а на узле SQL установлено несколько экземпляров SQL. Вот несколько примеров, поясняющих:
Строка подключения ниже приводит к исключению «Недействительный базовый поставщик при открытии» без внутреннего исключения в приложении .NET WebForms:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"
Следующая строка подключения выполняется, как и ожидалось, в приложении .net WebForms, где среда SQL имеет несколько экземпляров. Редкий я знаю, но у меня есть несколько разных экземпляров SQL в моей dev-блоке для размещения разных проектов:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhostSQLSERVER2014;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"
Ответ 30
в моем случае адрес сервера был изменен администратором сервера, поэтому мне пришлось изменить строку подключения на новый адрес сервера
Scenario:
A Windows application with Entity Framework and SQL Express backend was trying to save data to .mdf file on the file system.
When the application is executed by adding data to the .mdf file, the below error occurs:
Message: The underlying provider failed on Open.
Stack trace : at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)
at System.Data.EntityClient.EntityConnection.Open()
at System.Data.Objects.ObjectContext.EnsureConnection()
at System.Data.Objects.ObjectContext.SaveChanges(SaveOptions options)
at System.Data.Objects.ObjectContext.SaveChanges()
at EFLenoard.DataMgr.AddFacility(String name, String address, String city) in D:ResearchEFParentChildInsertEFParentChildInsert2010DataMgr.cs:line 35
Inner Exception : InnerException = {«An attempt to attach an auto-named database for file D:\Research\EFParentChildInsert\EFParentChildInsert2010\bin\Debug\SplDB.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC shared …
The connection string used is indicated below:
<connectionStrings> <add name="SQLDBEntities" connectionString="metadata=res://*/SplDBModel.csdl|res://*/SplDBModel.ssdl|res://*/SplDBModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.SQLEXPRESS;attachdbfilename=|DataDirectory|SQLDB.mdf;integrated security=True;user instance=True;multipleactiveresultsets=True;App=EntityFramework"" providerName="System.Data.EntityClient" /> </connectionStrings>
Reason:
Windows Authentication with user instance is used to connect to SQL server is the main cause of the issue.
Fix 1:
Try enabling «Allow Remote Clients» in DTC config.
In windows 7 the DTC config can be opened by running dcomcnfg. Under Component Services -> Computers -> My Computer -> Distributed Transaction Coordinator -> Right click to Local DTC -> Properties -> Security -> select the option Network DTC Access -> select the option Allow Remote clients as shown below:
Fix 2:
Database service is in Stopped state, go to services list and start it.
Fix 3:
Data Source attributes with SQL authentication may have invalid credentials. Check and enter the correct username and password could be wrong.
Fix 4:
In either case of Windows or SQL Authentication ensure that the user has proper access under ‘Security’ for the database.
Fix 5:
Simply add the network service as a user in the database security.
Fix 6:
Enabling DTC security settings.
Go to Properties of DTC as mentioned in Fix1. Under Security Tab, select the below options:
- Network DTC Access
- Transaction Manager Communication
- Allow Inbound
- Allow Outbound
Fix 7:
Reset IIS, even in case of using Integrated Security in the connection string.
Fix 8:
Remove the following from the Connection String:
persist security info=True
Fix 9:
With «Integrated Security=True;» in the connection string run the application pool identity under «localsystem». This surely is not recommended but for testing purposes give it a try.
Follow the below link to change the identity in IIS:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
In IIS set the App Pool Identity as Service Account user or Administrator Account or ant account which has permission to do the operation on that DataBase.
Check the connection string in web.config where Data Source=localhost is present. This could be the cause for the error, change it as “DOMAIN_NameMACHINE_Name”.
Fix 10:
The connection string has a value “user Instance=true”. Removing it clears the error.
- The user instance executes in the SQL context and won’t have permissions on the .mdf and .ldf files.
- Also the user instance to databases have an Auto Close option set. If there are no connections to a database for about 8-10 minutes, this Auto Close automatically shuts downs the database.
Hence it is advisable to remove “user Instance=true” settings from connection string.
Fix 11:
- Open the command prompt with “Run as administrator” and type the command as netsh Winsock reset
- Restart your system and try again.
Fix 12:
Step 1: Open Internet Information Service Manager.
Step 2: Click on Application Pools in the navigation tree.
Step 3: Select the version Pool for your ASP .Net version. Or else select DefaultAppPool which is common for all versions.
Step 4: Right click AppPool selected in previous step and select advanced settings.
Step 5 :In the properties window select Identity and click the button to change the value.
Step 6: Set Local System for built-in accounts and click ok.
Я использовал .mdf
для подключения к database
и entityClient
. Теперь я хочу изменить строку подключения так, чтобы не было файла .mdf
.
Правильно ли соответствует connectionString
?
<connectionStrings>
<!--<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;AttachDbFilename=|DataDirectory|NData.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />-->
<add name="conString" connectionString="metadata=res://*/conString.csdl|res://*/conString.ssdl|res://*/conString.msl;provider=System.Data.SqlClient;provider connection string="Data Source=.SQL2008;Initial Catalog=NData;Integrated Security=True;Connect Timeout=30;User Instance=True;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
Потому что я всегда получаю ошибку:
Недопустимый базовый поставщик при открытии
Ответ 1
У меня была эта ошибка и я нашел несколько решений:
Глядя на вашу строку подключения, она выглядит действительной. Я нашел этот пост в блоге, проблема в том, что они использовали Integrated Security. Если вы работаете в IIS, вашему пользователю IIS необходим доступ к базе данных.
Если вы используете Entity Framework с транзакциями, автоматически открывается Entity Framework и закрывает соединение с каждым вызовом базы данных. Поэтому при использовании транзакций вы пытаетесь распространить транзакцию на несколько соединений. Это поднимается до MSDTC.
(См. эту ссылку для получения дополнительной информации.)
Изменение моего кода на следующее исправлено:
using (DatabaseEntities context = new DatabaseEntities())
{
context.Connection.Open();
// the rest
}
Ответ 2
context.Connection.Open()
не помог решить мою проблему, поэтому я попытался включить «Разрешить удаленные клиенты» в конфигурации DTC, не более ошибок.
В Windows 7 вы можете открыть конфигурацию DTC, запустив dcomcnfg, Службы компонентов → Компьютеры → Мой компьютер → Координатор распределенных транзакций → Щелкните правой кнопкой мыши на Local DTC → Безопасность.
Ответ 3
Я обнаружил, что проблема в том, что у меня был путь к серверу в строке подключения в одном из этих вариантов:
SERVERSQLEXPRESS
SERVER
Когда я действительно должен был:
.SQLEXPRESS
По какой-то причине я получил ошибку, когда ему было трудно найти экземпляр SQL.
Ответ 4
Вы должны увидеть innerException, чтобы увидеть, какая внутренняя причина метания
ошибка есть.
В моем случае исходная ошибка:
Невозможно открыть физический файл «D:Projects2xCUxCUApp_DataxCUData_log.ldf». Ошибка операционной системы 5: «5 (Доступ запрещен.)». Не удалось выполнить попытку присоединения базы данных с автоименованием для файла D:Projects2xCUxCUApp_DataxCUData.mdf. База данных с тем же именем существует или указанный файл не может быть открыт или находится на общем ресурсе UNC.
который разрешен путем предоставления полного разрешения текущему пользователю для доступа к связанным файлам mdf
и ldf
с использованием свойств файлов.
Ответ 5
Это обычная проблема. Даже я столкнулся с этой проблемой. На машине разработки, настроенной с проверкой подлинности Windows, она отлично работает:
<add name="ShoppingCartAdminEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=.SQlExpress;initial catalog=ShoppingCartAdmin;Integrated Security=True;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
После размещения в IIS с той же конфигурацией я получил эту ошибку:
Недопустимый базовый поставщик при открытии
Было решено изменить connectionString
в файле конфигурации:
<add name="MyEntities" connectionString="metadata=res://*/ShoppingCartAPIModel.csdl|res://*/ShoppingCartAPIModel.ssdl|res://*/ShoppingCartAPIModel.msl;provider=System.Data.SqlClient;provider connection string="data source=MACHINE_NameSQlExpress;initial catalog=ShoppingCartAdmin;persist security info=True;user id=sa;password=notmyrealpassword;multipleactiveresultsets=True;application name=EntityFramework"" providerName="System.Data.EntityClient" />
Другие распространенные ошибки могут быть:
- Служба базы данных может быть остановлена
- Атрибуты источника данных, указывающие на локальную базу данных с проверкой подлинности Windows и размещенные в IIS
- Имя пользователя и пароль могут быть неправильными.
Ответ 6
Когда вы получаете это исключение, обязательно разворачивайте детали и просматривайте внутренние детали исключений, так как они будут содержать подробную информацию о том, почему логин завершился неудачно. В моем случае строка подключения содержала пользователя, который не имел доступа к моей базе данных.
Независимо от того, используете ли вы интегрированную безопасность (контекст зарегистрированного пользователя Windows) или отдельную учетную запись SQL, убедитесь, что у пользователя есть соответствующий доступ в разделе «Безопасность» для базы данных, к которой вы пытаетесь получить доступ, чтобы предотвратить эту проблему.
Ответ 7
У меня была аналогичная проблема с SQL Server Express Edition на Windows Server 2003. Я просто добавил службу сети в качестве пользователя в безопасности базы данных.
Ответ 8
Это также может произойти, если вы восстановите базу данных, а пользователь уже существует с другой схемой, в результате чего вам не удастся назначить правильные разрешения.
Чтобы исправить этот прогон:
USE your_database
EXEC sp_change_users_login 'Auto_Fix', 'user', NULL, 'cf'
GO
EXEC sp_change_users_login 'update_one', 'user', 'user'
GO
Ответ 9
Служба SQL Server Express не была настроена автоматически.
1) Перейдите на панель управления
2) Администрирование
3) Обслуживание
4) Установите SQL Server express для запуска автоматически, щелкнув по нему
5) Щелкните правой кнопкой мыши и запустите службу
Я надеюсь, что это поможет.
Ответ 10
Убедитесь, что значение каждого элемента в строке подключения правильно. В моем случае я получал ту же ошибку, потому что имя каталога (имя базы данных), указанное в строке подключения, было неправильным.
Ответ 11
У меня была аналогичная проблема с исключениями из-за состояния подключения, тогда я понял, что у меня есть переменная класса домена, помеченная как статическая (по ошибке).
Я предполагаю, что после того, как библиотека сервисов будет загружена в память, каждый новый вызов заканчивается тем же значением статической переменной (экземпляр службы домена), что вызывает конфликты через состояние соединения.
Я также думаю, что каждый вызов клиента привел к появлению нового потока, поэтому несколько потоков, обращающихся к одному и тому же экземпляру службы домена, приравнивались к крушению поезда.
Ответ 12
Я избавился от этого, сбросив IIS, но все еще используя Integrated Authentication
в строке подключения.
Ответ 13
Я опубликовал аналогичную проблему здесь, работая с SQL 2012 db, размещенным на Amazon RDS. Проблема была в строке соединения — у меня было «Имя приложения» и «Приложение» . Как только я удалил их, он сработал.
Entity Framework 5 и Amazon RDS -» Исходный провайдер отказался от Open. «
Ответ 14
Определение нового правила Брандмауэр Windows для SQL Server (и для порта 1433) на серверной машине разрешает эту ошибку (если ваше имя сервера, имя пользователя или пароль не ошибочны в вашей строке подключения…).
Ответ 15
У меня была аналогичная ошибка с внутренним исключением, как показано ниже:
операция недействительна для состояния транзакции
Я мог бы решить эту проблему, включив параметры безопасности DTC.
Перейдите в «Свойства кода DTC», в разделе «Вкладка» Безопасность «, проверьте ниже
- Доступ к сети DTC
- Разрешить удаленные клиенты
- Связь с диспетчером транзакций
- Разрешить входящие
- Разрешить исходящие
Ответ 16
Если вам удастся получить эту ошибку в веб-приложении ASP.NET, в дополнение к другим упомянутым вопросам проверьте следующее:
- Разрешения безопасности пользователя базы данных (пользователям разрешен доступ к вашей базе данных.
- Проверьте пул приложений в IIS и убедитесь, что он правильный, которому разрешен доступ к вашей базе данных.
Ответ 17
У меня возникла эта проблема, потому что был добавлен вход для пула приложений, в котором было запущено это приложение.
В IIS:
-
Найдите пул приложений, нажав на свой сайт и перейдя в «Основные настройки».
-
Перейдите в пулы приложений.
-
Нажмите на пул приложений вашего сайта.
-
Нажмите «Дополнительные настройки».
-
В Identity введите учетную запись и пароль.
-
Перезагрузите свой сайт и повторите попытку.
Ответ 18
У меня была такая же проблема, но то, что сработало для меня, было удаление этого из строки подключения:
persist security info=True
Ответ 19
Общей ошибкой, которую я делал, потому что я перемещал приложение с одного компьютера на другой, и ни одно из вышеперечисленных действий не было, я забыл скопировать строку подключения как в App.Config, так и в Web.Config!
Ответ 20
Я тоже столкнулся с той же проблемой. Теперь я сделал это, удалив имя пользователя и пароль из строки подключения.
Ответ 21
Для меня это была просто ошибка:
Я использовал Amazon EC2, и я использовал свой эластичный IP-адрес в строке подключения, но когда я изменил IP-адреса, я забыл обновить свои строка подключения.
Ответ 22
У меня внезапно возникла эта ошибка внезапно на одном из наших сайтов. В моем случае оказалось, что пароль пользователя SQL истек! Отключить окно срока действия пароля в SQL Server Management Studio сделал трюк!
Ответ 23
У меня была аналогичная проблема: в моих тестах я всегда получал эту ошибку. Я узнал, что моя «Служба распределенных транзакций» не была запущена (запустите: services.msc → start «Distributed Transaction Service» (лучше всего настроить ее на автоматический запуск)). После того, как я это сделал, он работал как шарм…
Ответ 24
Я скопировал файлы базы данных (.mdf/.ldf) в папку App_Data, чтобы избавиться от этого исключения.
Ответ 25
У меня была такая же проблема несколько дней назад, используя «Integrated Security = True»; в строке соединения вам нужно запустить идентификатор пула приложений в разделе «localsystem». Конечно, это не рекомендуется, но для тестирования он выполняет задание.
Вот как вы можете изменить идентификатор в IIS 7:
http://www.iis.net/learn/manage/configuring-security/application-pool-identities
Ответ 26
В IIS установите Идентификатор учетной записи пула приложений как учетная запись службы или учетная запись администратора или учетная запись ant, у которой есть разрешение на выполнение операции над этой базой данных.
Ответ 27
В моем случае у меня было несоответствие между именем строки подключения, которое я регистрировал в конструкторе контекста, вместо имени в моем web.config. Простая ошибка, вызванная копированием и вставкой: D
public DataContext()
: base(nameOrConnectionString: "ConnStringName")
{
Database.SetInitializer<DataContext>(null);
}
Ответ 28
У меня такая же ошибка, я обнаружил, что при изменении myStringString
к новому источнику данных
я забыл изменить имя пользователя и passowrd для новой базы данных
Ответ 29
Я также имел эту ошибку, если имя экземпляра SQL Server не указано, а на узле SQL установлено несколько экземпляров SQL. Вот несколько примеров, поясняющих:
Строка подключения ниже приводит к исключению «Недействительный базовый поставщик при открытии» без внутреннего исключения в приложении .NET WebForms:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhost;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"
Следующая строка подключения выполняется, как и ожидалось, в приложении .net WebForms, где среда SQL имеет несколько экземпляров. Редкий я знаю, но у меня есть несколько разных экземпляров SQL в моей dev-блоке для размещения разных проектов:
connectionString="metadata=res://*/Entities.csdl|res://*/Entities.ssdl|res://*/Entities.msl;provider=System.Data.SqlClient;provider connection string="Data Source=localhostSQLSERVER2014;Initial Catalog=Entities;User ID=user;Password=password;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient"
Ответ 30
в моем случае адрес сервера был изменен администратором сервера, поэтому мне пришлось изменить строку подключения на новый адрес сервера
- Remove From My Forums
-
Question
-
User-1950594959 posted
Hi, I get the error: System.Data.Entity.Core.EntityClient.EntityConnection.Open(); Entity Framework Exception “The underlying provider failed on Open” when connecting to the School_DB_Entities Entity Framework database. I checked the database
connectionstring and the property MultipleActiveResultSets=True. Not sure what else could have caused this.public class StudentController : ApiController { public IHttpActionResult GetAllStudents() { IList<StudentViewModel> students = null; using (var sdb = new School_DB_Entities()) { students = sdb.Students.Include("StudentAddress").Select(s => new StudentViewModel() { Id = s.StudentID, FirstName = s.FirstName, LastName = s.LastName, Address = s.StudentAddress, }).ToList<StudentViewModel>(); } if (students.Count == 0) { return NotFound(); } return Ok(students); } }
В общем проблема такая, когда обращаюсь к бд на запись с консольного приложения, то все отлично отрабатывает, но вот когда тоже пытается сделать Сервис, то вываливается от такая ошибка: The underlying provider failed on Open.
вот еще что написано в InnerException: Не удается открыть базу данных «Managers», запрашиваемую именем входа. Не удалось выполнить вход. Ошибка входа пользователя «NT AUTHORITYСИСТЕМА».
я уже не знаю что и думать!!!
Все ConnectionString норм написаны, т.к. (выше писал) из консоли данные в бд записываются.
Помогите советом, может, кто-то встречал такое, когда писал Сервисы с доступом к БД.
PS: Использую Entity Framework и MS Sql Server
Проблема:
При попытке войти в систему при помощи Windows Logon возникает «Ошибка при входе в систему. Unspecified error».
В логах фигурирует ошибка «Internal server error|The underlying provider failed on Open. unable to open database file.»
Причина:
На сервере AM включено кеширование, а клиентской машине отсутствуют файлы кэша по пути C:ProgramDataIndeed-IdAMCacheServerCacheData. Cам сервер недоступен.
- Remove From My Forums
-
Question
-
Hi
I am trying to get a WCF Service to work with Entity Framework (The WCF web service is in a Azure project)
The set up is extremely simple, I am just trying to log in from an ASP.NET MVC client with this code.
public bool UserLoginBL(string email, string password) { using (var context = new SHADBEntities()) {; var users = context.Users; var query = from user in users where user.Email == email & user.Password == password select user; if (query.Count() == 1) return true; else return false; } }
The code compiles fine but when I run it I get the error: "Thr underlying provider failed on Open"
You can have a look at my code here, I am actually just trying to do a "Hello World" for WCF, Entity Framework and SQL Server Express 2008 R2.
<a href="http://cid-5c0bc0a6f7bdc3c6.office.live.com/browse.aspx/Rune?permissionsChanged=1&1&sa=538782502">http://cid-5c0bc0a6f7bdc3c6.office.live.com/browse.aspx/Rune?permissionsChanged=1&1&sa=538782502</a>
Here is the exception details:
System.Data.EntityException was unhandled by user code<br/> Message=The underlying provider failed on Open.<br/> Source=System.Data.Entity<br/> StackTrace:<br/> at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)<br/> at System.Data.EntityClient.EntityConnection.Open()<br/> at System.Data.Objects.ObjectContext.EnsureConnection()<br/> at System.Data.Objects.ObjectQuery`1.GetResults(Nullable`1 forMergeOption)<br/> at System.Data.Objects.ObjectQuery`1.System.Collections.Generic.IEnumerable<T>.GetEnumerator()<br/> at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source)<br/> at System.Linq.Queryable.Count[TSource](IQueryable`1 source)<br/> at SHAServiceRole.BusinessLogicClasses.BusinessLogic.UserLoginBL(String email, String password) in C:UsersaDocumentsVisual Studio 2010SHASHAWebServiceSHAServiceRoleBusinessLogicClassesUsersBL.cs:line 27<br/> at SHAServiceRole.SHAService.UserLogin(String email, String password) in C:UsersaDocumentsVisual Studio 2010SHASHAWebServiceSHAServiceRoleSHAService.svc.cs:line 23<br/> at SyncInvokeUserLogin(Object , Object[] , Object[] )<br/> at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)<br/> at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)<br/> InnerException: System.Data.SqlClient.SqlException<br/> Message=An attempt to attach an auto-named database for file C:UsersaDocumentsVisual Studio 2010SHASHAWebServiceSHAServiceRoleApp_DataSHADB.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.<br/> Source=.Net SqlClient Data Provider<br/> ErrorCode=-2146232060<br/> Class=14<br/> LineNumber=65536<br/> Number=15350<br/> Procedure=""<br/> Server=\.pipe9C87934-CF43-45tsqlquery<br/> State=1<br/> StackTrace:<br/> at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)<br/> at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()<br/> at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)<br/> at System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)<br/> at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)<br/> at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)<br/> at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)<br/> at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)<br/> at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)<br/> at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)<br/> at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)<br/> at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)<br/> at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)<br/> at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)<br/> at System.Data.SqlClient.SqlConnection.Open()<br/> at System.Data.EntityClient.EntityConnection.OpenStoreConnectionIf(Boolean openCondition, DbConnection storeConnectionToOpen, DbConnection originalConnection, String exceptionCode, String attemptedOperation, Boolean& closeStoreConnectionOnFailure)<br/> InnerException: <br/>
rune007
Answers
-
Hi Olaf Helper
Thank you for your reply to my problem, I tried to change my DB to a server based DB, but the problem persisited.
Anyway another user in another forum, Mr. Rune Gulbrandsen, has problerly found the root to the problem.
You might remember in my initial post that I wrote that the WCF service was in a Windows Azure project and this seems to be the root of the problem.
Rune Gulbrandsen tried to run my code and observed:
«I tested your code here, and it works for me. But I discovered in one run that I suddenly got a new address to the Azure service. So maybe this is your problem? That Azure creates two services, and both tries to work against the same database?»
http://social.msdn.microsoft.com/Forums/en-US/adodotnetentityframework/thread/0ad4c3b6-bf17-4636-8647-5a1d51d32e89?prof=required
I tried to test it out by putting my code in just a straight WCF web service from VS (Instead of an Azure service role), and everything now worked as it should.
So it seems like the problem is happening because something is happening because it’s an Azure project.
So that seems to be there where the problem lies. I must then turn to the Azure forum to solve it.
rune007
-
Marked as answer by
Friday, April 22, 2011 10:05 AM
-
Marked as answer by
AutoCAD Mechanical Forum
Welcome to Autodesk’s AutoCAD Mechanical Forums. Share your knowledge, ask questions, and explore popular AutoCAD Mechanical topics.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for
Search instead for
Did you mean:
-
Back to forum -
Previous -
Next
1051 Views, 8 Replies
03-28-2019
08:08 AM
The underlying provider failed on open.
When saving a drawing I got the messsage «the underlying provider failed on open», and nothing happend. I have many users and that’s the only computer that gives that problem. It’s version AutoCAD Mechanical 2018. Version 22.0.46.0 Build on: O.49.0.0
-
Back to forum -
Previous -
Next
8 REPLIES 8
04-01-2019
04:50 AM
Hi @hvjo
as we do not know such an error message, is it possible that you attach a ScreenShot of the error message?
- Are you using any AddIns?
- Does this happen with all of your drawings?
- If you get a drawing from a colleague, open it and use Save as, do you get the same then?
Rainer Hotter
Technical Support Specialist — Installation & Licensing
04-05-2019
07:02 AM
Please do following
Start > All Programs > Autodesk > AutoCAD 2018 > Reset Settings To Default
Importing company settings again if any
04-09-2019
08:02 AM
Hi @hvjo,
could the answers help you fixing your issue?
If so, please mark the answer as solution so that the post get the state Solved.
Rainer Hotter
Technical Support Specialist — Installation & Licensing
04-11-2019
12:09 AM
HI @hvjo,
we are still waiting for your feedback to our answers.
Can you please respond or accept as solution.
Thanks
Rainer Hotter
Technical Support Specialist — Installation & Licensing
04-12-2019
07:10 AM
Hi @hvjo,
does the answer from @chumashankar solve your issue?
It would be fine to get a feedback to finish that item.
Rainer Hotter
Technical Support Specialist — Installation & Licensing
05-22-2019
03:45 AM
Yes It seems to solve the problem.
05-24-2019
01:19 AM
Hi Betreff. It seems that we still have the problem, now it’s also when we open drawings — so any good suggestions are very welcome.
The computers that don’t have the problem, it’s possible to reset and setup custom settings. Computers that have the problem, can’t be solved this way — so what to do ? All computers are installed the same way, by using CAPA installer.
05-24-2019
02:01 AM
…and Betreff, if I uninstall or reset to default, we still got the same error !!!
-
Back to forum -
Previous -
Next