2017-08-26 3 views
0

DBへの接続に苦労しています。私のdbはユーザー名とパスワードを必要としません。 Web.configファイルでSystem.Data.Entity.Core.EntityExceptionが発生しました

私の接続文字列が

System.Data.Entity.Core.EntityException occurred 
    HResult=0x80131501 
    Message=The underlying provider failed on Open. 
    Source=EntityFramework 
    StackTrace: 
    at System.Data.Entity.Core.EntityClient.EntityConnection.Open() 
    at System.Data.Entity.Core.Objects.ObjectContext.EnsureConnection(Boolean 
    shouldMonitorTransactions) 
    at System.Data.Entity.Core.Objects.ObjectContext.ExecuteInTransaction[T] 
    (Func`1 func, IDbExecutionStrategy executionStrategy, Boolean 
    startLocalTransaction, Boolean releaseConnectionOnSuccess) 
    at System.Data.Entity.Core.Objects.ObjectQuery`1.<>c__DisplayClass7. 
    <GetResults>b__5() 
    at 
    System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult] 
    (Func`1 operation) 
    at System.Data.Entity.Core.Objects.ObjectQuery`1.GetResults(Nullable`1 
    forMergeOption) 
    at System.Data.Entity.Core.Objects.ObjectQuery`1. 
    <System.Collections.Generic.IEnumerable<T>.GetEnumerator>b__0() 
    at System.Data.Entity.Internal.LazyEnumerator`1.MoveNext() 
    at MVCDemo.Controllers.EmployeeController.Details(Int32 id) in 
    C:\Users\homeuser\documents\visual studio 
    2017\Projects\MVCDemo\MVCDemo\Controllers\EmployeeController.cs:line 17 
    at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext 
    controllerContext, IDictionary`2 parameters) 
    at 
System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext 
controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 
parameters) 
at System.Web.Mvc.Async.AsyncControllerActionInvoker. 
<BeginInvokeSynchronousActionMethod>b__39(IAsyncResult asyncResult, 

ActionInvocationinnerInvokeState)atSystem.Web.Mvc.Async.AsyncResultWrapper.Wrap pedAsyncResult`2を次のようにエラーログがある

<connectionStrings> 
     <add name="EmployeeContext" 
      connectionString="Data Source=LAPTOP- 
HKBMHNCA\SQL2016AGAIN;Initial Catalog=aspnet-CodeFirstWithMVC- 
20170821025529;Integrated Security=True;" 
      providerName="System.Data.SqlClient" /> 
</connectionStrings> 

です。 CallEndDelegate(IAsyncResult asyncResult) at

System.Web.Mvc.Async.AsyncControllerActionInvo ker.EndInvokeActionMethod(IAsyncR esult asyncResult) at System.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters。 b__3d()

でSystem.Web.Mvc.Async.AsyncControllerActionInvoker.AsyncInvocationWithFilters。 <> c__DisplayClass46.b__3f()

内部例外1: SqlException:ユーザー 'IIS APPPOOL \ DefaultAppPool'のログインに失敗しました。

私のコントローラは、私はこのコンセプトに新しいですように私に助言してください

namespace MVCDemo.Controllers 
{ 
    public class EmployeeController : Controller 
    { 
    // GET: Employee 
     public ActionResult Details(int id) 
     { 
      EmployeeContext employeeContext = new EmployeeContext(); 

      Employee employee = employeeContext.Employees.Single(emp => emp.EmployeeId == id); 

     return View(employee); 
     } 
    } 
} 

私のモデルクラスは

namespace MVCDemo.Models 
{ 
public class Employee 
{ 
    public int EmployeeId { get; set; } 
    public string Name { get; set; } 
    public string Gender { get; set; } 
    public string City { get; set; } 



} 
} 

namespace MVCDemo.Models 
{ 
    public class EmployeeContext:DbContext 
    { 
     public DbSet<Employee> Employees { get; set; } 

    } 
} 

です。事前

よろしく Advit

+0

それは以下のかに関する質問ができますかどうかを確認し、データベースの認証エラーです:https://stackoverflow.com/questions/16427300/login-failed-for-user-iis-apppool-myapppool – PeterJ

+0

答えは簡単です。 'SqlException:ユーザー 'IIS APPPOOL \ DefaultAppPool'のログインに失敗しました。 SSMSを使用すると、そのユーザーに適切な権限が与えられます。 –

答えて

1

おかげで、次の

  • を確認してくださいあなたはSQL Serverの管理システム(SSMS)からデータベースに接続できることを確認してください。
  • データベースがローカルマシンに存在することを確認してください。
  • データベースに接続できない場合は、Windowsサービスにアクセスし、 サービスが実行中であるかどうかを確認してください。そうでない場合は、サービスを開始してください。
  • すべて正常に動作している場合。ウィザードのEntity Framework を使用してデータベースに接続してみます。それはあなたのためにすべてをセットアップします。

おかげ

関連する問題