繁体   English   中英

我的Web应用程序从一个Windows用户帐户与数据库连接,但没有从第二个Windows用户帐户与数据库连接

[英]my web application connect with database from one windows user account but not with second windows user account

我在Visual Studio 2010(mvc3剃须刀)中创建了一个Web应用程序,并在sql server 2008 r2中使用了自己的数据库,并使用regsql工具在我的数据库中添加了aspdbnet数据库。 我创建用户和角色,一切正常。 我使用笔记本电脑创建应用程序,系统名称为Zu​​lfiqar_PC。我的系统上有两个不同的用户帐户

  • 管理员
  • 佐菲卡

使用网站管理工具时,我已经使用Zulfiqar用户帐户完成了所有工作。 并且它可以正常工作,但是现在当我要从第二个用户(即管理员)运行我的应用程序时,它不会向我返回数据,并提示我“用户'Zulfiqar-PC \\ Administrator'登录失败”的错误

我的连接字符串在web.config文件的两个帐户中都相同,这是我的连接字符串和数据库的其他设置

<add connectionString="data source=(local);   Initial Catalog=BA; User ID=sa;Password=sql123" name="dbconnection" providerName="System.Data.SqlClient" />
     <providers>
    <clear/>
    <remove name="AspNetSqlMembershipProvider" />
    <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider,&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;&#xD;&#xA;System.Web, Version=2.0.0.0, Culture=neutral,&#xD;&#xA;PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="dbconnection" applicationName="/" />
  </providers>
</membership>

<profile>
  <providers>
    <clear />
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="dbconnection" applicationName="/" />
  </providers>
</profile>

<roleManager enabled="true">
  <providers>
    <clear />
    <add connectionStringName="dbconnection" applicationName="/" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" />
    <add applicationName="/" name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" />
  </providers>
</roleManager>

当我以管理员帐户运行网站管理工具时,其用户名与“ 当前用户名”相同:ZULFIQAR-PC \\ ADMINISTRATOR

在第一个帐户中,该帐户的当前用户名是:ZULFIQAR-PC \\ Zulfiqar

请任何人帮我解决该问题,我已经启用了sql tcp / ip ports等。

尝试2以下不同的方法。

方法1:

请按照以下声明将数据库文件/ SQL连接字符串更改为其他字符串

<add connectionString="data source=( CHANGE HERE TO DATABASE PATH ); Initial Catalog=BA; User ID=sa;Password=sql123" name="dbconnection" providerName="System.Data.SqlClient" />

将路径更改为:喜欢数据源路径

"Datasource="C:\\PROJECT\\MYDATABASE.mdb"" \\\\ Project Database

要么

使用此sql服务数据源标签

<add name="cs" connectionString="server=localhost;User Id=root;database=db_hrms"/>

方法2:

您创建的项目(VS C#中的Web应用程序)位于

C:\Users\User_Name_1\Documents\Visual Studio 2010\Projects
C:\Users\User_Name_2\Documents\Visual Studio 2010\Projects

您必须复制该项目并以不同的用户(其他用户)运行该项目, 两者都会为Web应用程序产生相同的结果 ,但在Windows应用程序中却有所不同。 但是您要连接的数据库在其他用户中不存在。

我通过创建管理员帐户并在sql服务器中为该帐户分配适当的服务器角色来解决了我的问题。 我在SQL Server中没有管理员帐户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM