2016-07-28 11 views
1

私のASP.NETプロジェクトでは、ユーザーの現在の役割をIDで取得しようとしています。ここでは、コントローラのための私のコードは次のとおりです。私はそれを実行しようとするとASP.NET MVC 5-特定のユーザーのロールを取得する

public ActionResult ChangeRole(string id) 
    { 
     var user = _context.Users.Single(u => u.Id == id); 
     var roles = new RoleManagerViewModel() 
     { 
      RoleNames = Roles.GetRolesForUser(user.Id) 
     }; 
     return View(roles); 
    } 

しかし私はこのエラーを取得:

The Role Manager feature has not been enabled.

私はroleManager enabled="true"を追加することによって、その問題を解決できることを読みました。

私はweb.configファイルにあることを追加した後、私はこのエラーを取得するのに:

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: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

答えて

1

適切な認証がアクセスされているSQL Serverにweb.configファイルによって与えられていない場合、このエラーは通常、A、発生typo、またはSQL Serverがその特定のサーバーへの接続文字列で定義されていません。ロールマネージャデータベースにアクセスしている場合は、その情報が以下のリンクに役立つ場合があります。ここ

たとえばパー、

<add name="SqlConnection" connectionString="Data Source=MSSQLSERVER; Initial Catalog=DatabaseName; Integrated Security=True;"> 
</add> 

詳細情報:https://msdn.microsoft.com/en-us/library/ff647401.aspx?f=255&MSPPError=-2147217396

Windows認証は、統合セキュリティがtrueに設定されている場合、それはデータベースに接続するには、WindowsのActive Directoryのログオン資格情報を使用します。その後、使用されている場合サーバ。データベースサーバーにログオン資格情報の一致が必要であることを確認してください。

+0

私のコンピュータ上のローカルデータベースにアクセスしているだけなので、なぜ私はエラーが発生しているのか試してみるのは混乱していると思います。 – ecain

+0

データソースにdb localを使用しようとしましたか? – JDavila

関連する問題