0

WCF RIA サービスを介して Lightswitch RTM から既存の MySQL DB に接続しようとしています。

私は次のことをしました:

  • 開発マシンの MySQL 開発者ゾーンからMySQL コネクタ バージョン 6.3.7 をインストールします。最新バージョン 6.4.3 は機能していないようで、Visual Studio 内から接続を確立すると、「サーバーと同期していません」というエラーが表示されます。
  • 新しいデータ接続を作成し、プロバイダーとして MySQL データベースを選択し、MySQL サーバーの IP アドレス、ユーザー名、およびパスワードを指定して、Visual Studio からの接続をテストします。

これは機能し、DB は正しく表示されます。

次に、こちらのチュートリアルに従って、 WCF RIA サービスを作成します。

  • テンプレートWCF RIA サービス クラス ライブラリに基づいて、新しいプロジェクトをソリューションに追加します。
  • ADO.NET エンティティ データ モデルを WCF RIA Web プロジェクトに追加し、ウィザードを使用してそれを MySQL データベースに接続します。生成された接続文字列は metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=MySql.Data.MySqlClient;provider connection string="server=10.192.xx.yy;User Id=xxxxxxx;database=projet;password=xxxxxxxxxx;Persist Security Info=True".

  • ドメイン サービスを WCF RIA Web プロジェクトに追加します。

これは正しく動作します。エンティティ ダイアグラムには、データベースの選択された 3 つのテーブルとすべてのフィールドが表示されます。

次に、こちらのチュートリアルに従って、WCF RIA サービスをライトスイッチに接続しました。

  • Lightswitch プロジェクトで、新しいデータ ソースを作成し、WCF RIA サービスにアタッチします。
  • WCF RIA Web プロジェクトへの参照を追加し、必要なデータ ソース オブジェクトを選択します。これは機能し、データ ソース オブジェクトが正しくインポートされます。
  • 最後に、接続文字列を WCF RIA Web プロジェクト ファイル App.config から、Lightswitch プロジェクトのサーバー生成プロジェクト内のファイル web.config にコピーします。行は次のとおりです。
    <add name="b70821ef-..." connectionString="metadata=res:///Model.csdl|res:///Model.ssdl|res://*/Model.msl;provider=MySql.Data.MySqlClient;provider connection string="server=10.192.xx.yy;User Id=xxxxxxx;database=projet;password=xxxxxxx;Persist Security Info=True"" providerName="System.Data.EntityClient"/>

ソリューションはエラーなしで構築できます。ただし、Lightswitch アプリケーションを実行すると、MySQL テーブルの詳細画面に赤い十字のみが表示され、データをロードできないことが示されます。

web.config に貼り付けた接続文字列が間違っていると思われます。

上記のアプローチで何が間違っている/欠けているか、または問題を特定してデバッグするにはどうすればよいですか?

4

1 に答える 1

1

この投稿に従ってください。 http://lightswitchhelpwebsite.com/Forum/tabid/63/aft/89/Default.aspx

私にとっては解決策でした-> coonection 文字列の構成に関する最後のポイントを参照してください

よろしく

于 2011-08-24T13:01:21.437 に答える