web-dev-qa-db-ja.com

Visual Studio 2015からMySQLに接続できません

だから私はすでにこれを修正するために約2日を費やしてきました。私は職場のPCでこれを修正することに成功しましたが、自宅のPCでは動作しません。私は12のSOの記事とOracleフォーラムの記事などについて読みましたが、それでも機能しません。

Vs2015で動作するリリースであるはずのビジュアルスタジオ用の1.2.4 msqlがあります。私はmysqlコネクタ6.8.6をインストールし、最初にnugetを介してmysqlをプロジェクトに追加しようとしましたが、6.8.6バージョンを見つけることができませんでした(1つのパッケージに6.8.3と6.9.7があり、次に別のパッケージがあります)その他の場合...)私はC:\ Program Files(x86)\ MySQL\MySQL Connector Net 6.8.6\Assemblies\v4.5を参照し、そこに4つのファイルを取得して、fkin全体にコピーしましたコンピューター。どこでも貼り付けてます。 vs2013プライベートアセンブリ、とにかく参照していない私のパッケージフォルダー、およびいくつかのvs2015フォルダーと思います。 Mysql.Dataを検索し、結果として表示されるすべてのフォルダーにこれらのファイルを貼り付けました。ソリューションを約100〜200回再構築し、少なくとも20分間は泣きました。

新しいADO.Net Entity Data Modelを生成するにはどうすればよいですか?

私はこのばかげている enter image description here 画像で、次に何をすればいいのかまったくわかりません。コーディングしたいだけですが、何かを始めるたびに、ツールが機能しないために何日も無駄にしています。何かが機能していないのは私のせいだと確信できるように、本当にメモ帳でコーディングする必要がありますか?

これは私のapp.Configファイルです。私のプロジェクトには他に何もありません。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.Microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
      <parameters>
        <parameter value="v12.0" />
      </parameters>
    </defaultConnectionFactory>
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
  <system.data>
    <DbProviderFactories>
      <remove invariant="MySql.Data.MySqlClient" />
      <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.8.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-Microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.8.6.0" newVersion="6.8.6.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
  <connectionStrings>
    <add name="KPlusConnectionString" connectionString="server=dito.ninja;user id=xxx;password=xxx;database=xxx" providerName="MySql.Data.MySqlClient" />
  </connectionStrings>
</configuration>
8
ditoslav

VS 2015がMySqlに接続するには、MySqlライブラリの新しいバージョンを使用する必要があります。それは非常に単純な答えのようですが、正直に言って、途中でいくつかの問題に遭遇しました。そのことを念頭に置いて、EFがMySqlとVS2015で動作するようになるまで一貫して機能してきた1つのプロセスを書き出します。さて、これ以上苦労せずに、これを機能させるために私が取っている手順を次に示します。

1)MySqlコネクタのインストールが更新されていることを確認します

2)Webプロジェクトを作成する

3)Nugetを開く

4)Entity Frameworkのインストール

5)MySqlを検索します

6)MySql.Dataをインストールする

7)MySql.Data.Entityをインストールします

8)MySql.Data.Entitiesをインストールします

9)MySql.Webをインストールします

10)プロジェクトの参照に移動し、MySql.Data.Entity.EF6を削除します

11)MySql.DataおよびMySql.Webライブラリのバージョンを確認します。 6.9.6未満の場合は、それらも削除します

12).NETフレームワークのバージョンのmysqlコネクタのインストール場所を参照して、新しい参照を追加します(私のファイルはC:\ Program Files(x86)\ MySQL\Connector.NET 6.9\Assemblies\v4.5)。 MySql.Data.Entity.EF6.dllを取得します(私のバージョンは6.9.6です。後でweb.configを変更するときにそれを覚えておいてください)

13)他のライブラリも古いバージョンである場合は、ソリューションのパッケージフォルダーを参照し、それぞれのフォルダーからファイルを取得して、それらのライブラリへの参照を追加します。通常、これを行う必要はありません。

14)Web.configを編集する必要があります。最初のステップは、エンティティフレームワークセクションをこのコードに置き換えることです(バージョン番号を現在のバージョンに変更します。このスニペットは数週間前にWebで見つかり、元のリンクがないことに注意してください。元のリンクに謝罪します。この情報のポスター。)

<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6, Version=6.9.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</providers>
</entityFramework>

15)DbProviderFactoriesセクションが一致していることを確認してください

<DbProviderFactories>
  <remove invariant="MySql.Data.MySqlClient" />
  <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.9.6.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>

16)保存してビルド

実際にこれらの手順がいくつ必要かはわかりませんが、最終的にそれを取得した後、実際に作業を行う必要があり、さらに絞り込むための時間はありませんでした。うまくいけば、それがあなたを動かします。

追伸それでもすべてウィザードを実行し、エンティティを作成するためのデータベース内のテーブルが表示される前にウィザードが表示されなくなった場合は、途中で発生した3つの問題の1つである可能性があります。データベースサーバーに接続できません。ユーザーにはデータベースに必要な権限がありません。 MySql.Data.Entity.EF6の間違ったバージョンが参照として追加されたか、web.configのバージョン番号が間違っています。私のソリューションのパッケージディレクトリからこのファイルを取得すると、このエラーメッセージで中断されたウィザードの問題が頻繁に発生します。 MySqlインストールディレクトリからそれを取得することは、私にとってはいつもうまくいきました。

14
Samko

わたしにはできる。私はVisual Studio 2015を持っており、コネクタの最新バージョンをインストールしました: http://dev.mysql.com/downloads/windows/visualstudio/

これをもっと注意深く読んでください: http://dev.mysql.com/doc/relnotes/mysql-for-visual-studio/en/visual-studio-news-1-2-4.html

彼らは、「Microsoft ASP.NET MVC」のバージョンが問題になる可能性があると述べています。間違っているのは、VS2015にはバージョン5が同梱されているが、VS2015 Enterprise finalにはバージョン4がインストールされているということです。

3
Dejan Rajic
  1. VS2015の場合、MySqlインストーラー-コミュニティを介してインストールされたすべてのバージョンを削除しました。インストールのカスタマイズとインストールするMySQLコネクタを選択しました:1. Visual StudioのMySql 2)MySQl ConnectorNet。

  2. 私は参照を追加しました:MySql.Data y MySql.Data.Entity.EF5両方のC:\ Program Files(x86)\ MySQL\Connector.NET 6.9\Assemblies\v4.5 \

  3. プロジェクトを再コンパイルし、ADO.Netオブジェクトを作成すると、有名なMySqlデータプロバイダーが表示されました。エンティティフレームのバージョンに関する警告が表示されました。[次へ]をクリックして機能しました。[ここに画像の説明を入力してください] [1]

0
JSM

これを試してみましたが、うまくいきませんでした。最終的に機能したのは、適切なドライバーがいることを確認することでした。 64ビットのWindows 7コンピューターを実行しています。最終的に、32ビットバージョンのMySQLをインストールする必要がありましたODBC connector/driverで、次の接続文字列を使用しました "Provider = MSDASQL; Driver = {MySQL ODBC 5.3 ANSI Driver}; Server = localhost; Database = xxxx; User = xxxx; password = xxxx; Option = 3; "そしてそれはそれを解決しました。上記のすべての変更を行うことなく新しいプロジェクトでテストし、それはうまくいきました。これは投稿はこれを説明するのに非常に役立ちました: https://support.Microsoft.com/en-us/kb/942976 。これが誰かに多くの時間を節約してほしい

0
Jay247

このサイトからパッケージをインストールします。 http://dev.mysql.com/downloads/windows/visualstudio/[開発リリース]タブ

Visual Studioを停止しました。インストールしました。 WAITED ..いつまでも続く継ぎ目。 Visual Studioがバックグラウンドで実行されます。

完了するまで待ちます。

visual Studioを再度開きます。遊びに戻ってブーム!

幸運を !

0
Jon Hallam