ASP.NETコア1 EF7でSQL Serverに接続できません

asp.net-core asp.net-core-1.0 entity-framework-core sql-server

質問

ASP.NET Core 1.0 Webアプリケーション(Entity Framework Core)からSQL Server 2014または2016に接続しようとしています。私は以下のエラーが発生しています。どのようにそれを解決するためのヒント。

Visual Studio 2015 SQL Server Object ExplorerからDBに正常に接続できます。ただし、Webアプリケーションからの接続は失敗します。私はdotnet ef database updateこともできません。

私はLOCALDBに接続することができます。

私の接続文字列は次のようになります:

"DefaultConnection": "Data Source=server;Initial Catalog=TestDb;Integrated Security=False;User ID=sa;Password=*****;Connect Timeout=15;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"

私が得るエラーはです。 SQL Server 2014と2016で同じエラーが発生する:

An unhandled exception occurred while processing the request.

Win32Exception: The network path was not found
.ctor

SqlException: 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: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

スタックトレースは次のとおりです。

Win32Exception: The network path was not found
.ctor
CreateConnection
CreatePooledConnection
CreateObject
UserCreateRequest
TryGetConnection
WaitForPendingOpen
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
GetResult
MoveNext in AccountController.cs
                var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false);
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext
MoveNext
ThrowForNonSuccess
HandleNonSuccessAndDebuggerNotification
MoveNext

EDIT 1

これは、 「サーバーに接続できません - ネットワーク関連またはインスタンス固有のエラー」が表示されるのはなぜですか?

EDIT 2

私が問題を抱えているこのプロジェクトのタイプは、 ASP.NET Core Web Application(.NET Coreです。

しかし、私はASP.NET Core Web Application(.NET Frameworkプロジェクトを作成してみましたが、問題はありませんでした。私は接続することができました。 ASP.NETコアWebアプリケーション(.NET Core)がSQLサーバーと.NET Frameworkに接続しない)プロジェクトが接続する

これらのプロジェクトの違いは何ですか?

人気のある回答

私は今日も同様の問題を抱えていました。 SQL Serverへの.Netコア接続文字列は、以前の.Net SQL Server接続文字列とは少し違っているようです。 MSDNブログでここで指定したものと似たものを使ってみましたか?

using (var connection = new SqlConnection("Server=tcp:YourServer,1433;Initial Catalog=YourDatabase;Persist Security Info=True;"))

(ページを「リレーショナルデータベース」と「SQL Server」のサブ見出しにスクロールすると、例が見つかります)。

文字列でユーザー名とパスワードを使用している場合は、これを試すこともできます。

"Server=tcp:yourservername,1433;Initial Catalog=yourdbname;User ID=yourusername;Password=yourpassword;"


Related

ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ