rob*_*sta 6 c# asp.net asp.net-membership roleprovider sitemapprovider
我正在使用默认的Sitemap提供程序进行安全修整.但是,有些如何,我得到:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误.
我认为站点地图提供商正在寻找错误位置的角色.我的配置是这样的:
<connectionStrings>
<add name="DB" ... />
</connectionStrings>
<membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
<providers>
<clear/>
<add name="SqlProvider" .../>
</providers>
</membership>
<roleManager enabled="true">
<providers>
<add connectionStringName="DB" type="System.Web.Security.SqlRoleProvider" ... />
</providers>
</roleManager>
Run Code Online (Sandbox Code Playgroud)
Sitemap标记的定义如下:
<siteMap defaultProvider="XmlSiteMapProvider" enabled="true" >
<providers>
<clear/>
<add name="XmlSiteMapProvider"
description="Default SiteMap provider."
type="System.Web.XmlSiteMapProvider "
siteMapFile="Web.sitemap"
securityTrimmingEnabled="true" />
</providers>
</siteMap>
Run Code Online (Sandbox Code Playgroud)
为什么我得到sql错误?修剪如何获得角色?
编辑:

您的屏幕截图的核心错误是
\n\n\n\n\n与 SQL Server 建立连接时\n 发生与网络相关或特定于实例的错误。找不到服务器或\n 无法访问服务器。验证实例名称是否正确并且\n SQL Server
\n
不幸的是,这被截断了。该消息通常会继续“已配置为允许远程连接。 ”,并且可能进一步跟随特定原因(例如,它可能会声明(以及各种其他原因)“提供商:SQL 网络接口,错误:26 \xe2\x80\x93 定位指定的服务器/实例时出错”)
\n\n但是,根据您目前收到的消息,看起来客户端计算机和 SQL Server 框之间存在连接问题。因此,我首先考虑对 SQL Server 框和网络连接进行尽职调查:
\n\n如果通过,那么您需要进行验证才能登录。我通常使用 SQL 管理工具,尤其是命令行工具sqlcmd来测试基本连接(例如:sqlcmd -E -S mysqlserver\\instance连接到默认数据库或sqlcmd -E -S mysqlserver\\instance -d database连接到特定数据库)。显然,您需要以 Web 应用程序运行的用户身份运行这些命令,否则它们将尝试以您的身份进行身份验证(使用runas或在不同凭据下启动命令提示符 [在开始菜单中查找命令提示符然后,Shift+右键单击->“以其他用户身份运行]。
然而,最终有帮助的是,如果您可以获得完整的错误消息文本(而不是截断的版本),那么这可能有助于缩小您遇到的具体问题的范围。
\n| 归档时间: |
|
| 查看次数: |
455 次 |
| 最近记录: |