当我在ASP.net中使用站点地图在我的网站中创建树视图或siteMapPath时,我遇到了与配置相关的异常:
验证主机''对于用户''使用方法 ' mysql_native_password'消息失败:用户拒绝访问 '' @' DESKTOP-54CAR3Q' (使用密码:否)
]
这是错误代码:
<siteMap>
<providers>
<add name="MySqlSiteMapProvider" type="MySql.Web.SiteMap.MySqlSiteMapProvider, MySql.Web, Version=6.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/"/>
</providers>
</siteMap>
答案 0 :(得分:1)
我不确定将machine.config
文件搞砸是个好主意。无论如何,您可能无法在典型的生产服务器中访问它。
更简洁的解决方案是在<clear />
部分的开头添加<providers>
;像这样
<providers>
<clear />
<!-- add your own provider(s) -->
</providers>
您还可以指定默认提供商;像这样(我使用过示例提供程序):
<siteMap defaultProvider="DefaultSiteMap" enabled="true">
<providers>
<clear />
<add name="DefaultSiteMap" siteMapFile="Web.sitemap"
type="System.Web.XmlSiteMapProvider"
description="My Preferred SiteMap Provider"
securityTrimmingEnabled="true" />
</providers>
</siteMap>
答案 1 :(得分:0)
最后我得到了solution
的解决方案指导我在路径中的machine.config中注释标记 “C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ machine.config”
刚刚对代码进行了评论
<providers>
<add name="MySqlSiteMapProvider" type="MySql.Web.SiteMap.MySqlSiteMapProvider, MySql.Web, Version=6.9.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" connectionStringName="LocalMySqlServer" applicationName="/"/>
</providers>
我不知道为什么,但无论如何它都适用于我的电脑和笔记本电脑