不支持关键字: “provider”。 哥哥姐姐 各位老师 救救我吧 困扰我几天了

时间:2022-10-27 10:10:25
谢谢各位帮忙看看啊  谢谢谢谢谢谢谢~~~~~~~~~~~~~~~~~~~~
在登陆页面里面 输入帐号密码登陆后就显示  不支持关键字: “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 

#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 

#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


怎么解决的呀?