在登陆页面里面 输入帐号密码登陆后就显示 不支持关键字: “provider”。
支持关键字: “provider”。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ArgumentException: 不支持关键字: “provider”。
源错误:
行 17: ByVal username As String, _
行 18: ByVal password As String) As Boolean
行 19: Dim conn As SqlConnection = New SqlConnection(_connStr)
行 20: Try
行 21: conn.Open()
web.config文件源代码
<?xml version="1.0"?>
<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
<appSettings/>
<connectionStrings>
<add name="MySqlConnection"
connectionString="Provider=System.Data.SqlClient;
Data Source=.\SQLEXPRESS;
AttachDbFilename='|DataDirectory|\Database.mdf;
Integrated=' Security=True;
User Instance=True"/>
</connectionStrings>
<system.web>
<authentication mode="Forms">
<forms loginUrl="login.aspx" name=".ASPXFORMSAUTH">
</forms>
</authentication>
<authorization>
<deny users="?"/>
</authorization>
<membership
defaultProvider="myoamembershipprovider">
<providers>
<add name="myoamembershipprovider"
connectionStringName="MySqlConnection"
type="myoamembershipprovider"
requiresQuestionAndAnswer="true"
/>
</providers>
</membership>
<compilation debug="true" strict="false" explicit="true"/>
<pages>
<namespaces>
<clear/>
<add namespace="System"/>
<add namespace="System.Collections"/>
<add namespace="System.Collections.Specialized"/>
<add namespace="System.Configuration"/>
<add namespace="System.Text"/>
<add namespace="System.Text.RegularExpressions"/>
<add namespace="System.Web"/>
<add namespace="System.Web.Caching"/>
<add namespace="System.Web.SessionState"/>
<add namespace="System.Web.Security"/>
<add namespace="System.Web.Profile"/>
<add namespace="System.Web.UI"/>
<add namespace="System.Web.UI.WebControls"/>
<add namespace="System.Web.UI.WebControls.WebParts"/>
<add namespace="System.Web.UI.HtmlControls"/>
</namespaces>
</pages>
</system.web>
</configuration>
myoamembershipprovider.vb 的代码
Imports Microsoft.VisualBasic
Imports System.Data.SqlClient
Public Class myoamembershipprovider
Inherits SqlMembershipProvider
Private _connStr As String = " "
Public Overrides Sub Initialize( _
ByVal name As String, _
ByVal config As System.Collections.Specialized.NameValueCollection)
_connStr = ConfigurationManager.ConnectionStrings("MySqlConnection").ConnectionString
MyBase.Initialize(name, config)
End Sub
Public Overrides Function ValidateUser( _
ByVal username As String, _
ByVal password As String) As Boolean
Dim conn As SqlConnection = New SqlConnection(_connStr)
Try
conn.Open()
Dim sql As String = "select * from T_users where loginname=@username AND password =@password"
Dim comm As New SqlCommand(sql, conn)
comm.Parameters.AddWithValue("@username", username)
comm.Parameters.AddWithValue("@password", password)
Dim reader As SqlDataReader = comm.ExecuteReader
If reader.HasRows Then
reader.Read()
If (password.Equals(reader.Item("password").ToString())) Then
Return True
Else
Return False
End If
Else
Return False
End If
conn.Close()
Catch ex As Exception
Return False
End Try
Return MyBase.ValidateUser(username, password)
End Function
End Class
6 个解决方案
#1
web.config中修改连接字符串如下
<connectionStrings>
<add name="MySqlConnection"
connectionString="Data Source=.\SQLEXPRESS;
AttachDbFilename='|DataDirectory|\Database.mdf;
Integrated=' Security=True;
User Instance=True"
Provider="System.Data.SqlClient"
/>
</connectionStrings>
#2
谢谢楼上的大哥 但是替换后还是不行
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误信息: 无法识别的属性“Provider”。请注意属性名称区分大小写。
源错误:
行 11: Integrated=' Security=True;
行 12: User Instance=True"
行 13: Provider="System.Data.SqlClient"
行 14: />
行 15: </connectionStrings>
源文件: D:\Backup\我的文档\Visual Studio 2005\WebSites\myoa\web.config 行: 13
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误信息: 无法识别的属性“Provider”。请注意属性名称区分大小写。
源错误:
行 11: Integrated=' Security=True;
行 12: User Instance=True"
行 13: Provider="System.Data.SqlClient"
行 14: />
行 15: </connectionStrings>
源文件: D:\Backup\我的文档\Visual Studio 2005\WebSites\myoa\web.config 行: 13
#3
Provider="System.Data.SqlClient" 去去掉么好了
#4
<connectionStrings>
<add
name="LocalSqlServer"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient"
/>
</connectionStrings>
#5
已经解决 谢谢楼上的各位大哥 庆祝 散分
#6
怎么解决的呀?
#1
web.config中修改连接字符串如下
<connectionStrings>
<add name="MySqlConnection"
connectionString="Data Source=.\SQLEXPRESS;
AttachDbFilename='|DataDirectory|\Database.mdf;
Integrated=' Security=True;
User Instance=True"
Provider="System.Data.SqlClient"
/>
</connectionStrings>
#2
谢谢楼上的大哥 但是替换后还是不行
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误信息: 无法识别的属性“Provider”。请注意属性名称区分大小写。
源错误:
行 11: Integrated=' Security=True;
行 12: User Instance=True"
行 13: Provider="System.Data.SqlClient"
行 14: />
行 15: </connectionStrings>
源文件: D:\Backup\我的文档\Visual Studio 2005\WebSites\myoa\web.config 行: 13
配置错误
说明: 在处理向该请求提供服务所需的配置文件时出错。请检查下面的特定错误详细信息并适当地修改配置文件。
分析器错误信息: 无法识别的属性“Provider”。请注意属性名称区分大小写。
源错误:
行 11: Integrated=' Security=True;
行 12: User Instance=True"
行 13: Provider="System.Data.SqlClient"
行 14: />
行 15: </connectionStrings>
源文件: D:\Backup\我的文档\Visual Studio 2005\WebSites\myoa\web.config 行: 13
#3
Provider="System.Data.SqlClient" 去去掉么好了
#4
<connectionStrings>
<add
name="LocalSqlServer"
connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true"
providerName="System.Data.SqlClient"
/>
</connectionStrings>
#5
已经解决 谢谢楼上的各位大哥 庆祝 散分
#6
怎么解决的呀?