我在ASP .NET中使用Membership API,我在登台服务器上遇到了以下问题.该应用程序在我的本地计算机上正常运行 数据表存储在SQL Server上.我的本地服务器和登台服务器都指向同一个数据库服务器.当我部署到我的登台服务器时,我收到以下错误:
Parser Error Message: The connection name 'OraAspNetConString' was not found in the applications configuration or the connection string is empty. Line 135:Line 136: Line 137: Line 138: Line 139: Source File: c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config Line: 137
我不知道为什么它甚至试图用Oracle做任何事情,我web.config
不包含任何与Oracle相关的东西.
有没有人知道为什么会这样?
[编辑] 在我本地机器的machine.config上我没有OracleRoleProvider键.但我的登台服务器呢.如果这有帮助.
这里的老问题,但我刚刚遇到它,想分享一些更多的细节.
首先,如果您需要
在connectionStrings块中执行操作,最简单的解决方案是将空白的OraAspNetConString connectionstring条目添加回web.config:
在任何计算机上安装Oracle .NET软件包时会发生什么情况,它会将大量不同的提供程序安装到machine.config中,并将OraAspNetConString作为计算机级别的connectionString安装.该
元素摆脱了OraAspNetConString,并且由于Oracle的machine.config添加,默认情况下加载的所有其他Oracle提供程序在找不到connectionString时都会崩溃.
这里你探讨使用元素作为成员资格提供者的另一个答案是行不通的,因为在machine.config中添加的大多数其他oracle提供者仍然会寻找那个OraAspNetConString,所以只清除那个提供者并没有帮助你.
这些是他们在我的machine.config中安装的所有提供者:
因此,如果您不想添加空白的OraAspNetConString,则必须确保
以下每个Oracle提供程序或者进入
并向每个提供程序类添加一个元素,如下所示:
我从未在我的网络应用程序中处理过任何siteMap或健康监控代码,但我仍然需要
在我的web.config中为不同的提供程序手动添加这些元素,否则会崩溃寻找不存在的OraAspNetConString连接字符串.