0

ASP.NET +MySqlDbを使用しています。ListViewを構成しようとしているので、次のように記述しました。

<asp:SqlDataSource ID="dsDatiUtente" runat="server" ConnectionString="Server=12.28.136.29;Database=mydb;Uid=m111d1;Pwd=fake;Pooling=false;"
                ProviderName="MySql.Data.MySqlClient"
                SelectCommand="SELECT * FROM user WHERE idUser=@IdUser"

/>

私のaspxページの始めに私は追加しました

<%@ Import Namespace="MySql.Data.MySqlClient" %>

しかし、sqldatasourceをクリックして[Refresh Schema]をクリックすると、次のエラーが発生します。

「スキーマを取得できません。..。要求された.NetFrameworkデータプロバイダーが見つかりません。」

たとえば、私はそれをインストールしましたが、古いバージョンもアンインストールしてから、新しいバージョンをインストールしました。私のプロジェクトでは、Mysql dllを「bin」フォルダーにコピーしてから、そのdllへの参照を追加します。正しい方法かわかりません...

vs.netがリストビューを自動的にビルドできるようにするには、「更新されたスキーマ」が必要です...リストビューを「自動ビルド」できない場合は、すべてのコードを手動で作成する必要があり、コストがかかりすぎます。自分 :(

私は何が間違っていますか?

ありがとうございました!

4

2 に答える 2

1

コードをこのようなものに変更しても機能しますか?

Web.Config

<configuration>

 <system.data>
   <DbProviderFactories>
     <add name="MySQL Data Provider" 
       invariant="MySql.Data.MySqlClient" 
       description=".Net Framework Data Provider for MySQL" 
       type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
   </DbProviderFactories>
 </system.data>


  <connectionStrings>
    <add name="MySQL1"
    connectionString= "Server=12.28.136.29;Database=mydb;Uid=m111d1;Pwd=fake;Pooling=false;"
     providerName="MySql.Data.MySqlClient"/>    
  </connectionStrings>

ASPXページ:

<%@ Import Namespace="MySql.Data.MySqlClient" %>

 <asp:SqlDataSource ID="dsDatiUtente"   runat="server"
        ConnectionString="<%$ ConnectionStrings:MySQL1 %>"
        ProviderName="<%$ ConnectionStrings:MySQL1.ProviderName %>"
        SelectCommand="SELECT * FROM user WHERE idUser=@IdUser;"
         />
于 2010-06-09T15:55:00.980 に答える
0

mysqlコンポーネントをmachine.configに登録することを解決しました。インストールの問題でした。だから私は自分のmachine.configにこれを書きました:

   <system.data>
    <DbProviderFactories>
        <clear/>
        <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient"
        description=".Net Framework Data Provider for MySQL"
        type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, 
         Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d " /> <!-- 13b67ce9e090fefa per la versione 6.3.1-->
    </DbProviderFactories>
</system.data>
于 2010-06-14T22:27:45.120 に答える