1

Rails Web アプリケーションに接続したい Windows デスクトップ アプリケーション (.NET 2.0 フレームワークを使用して C# で開発) があります。このシナリオは、理想的には次のように機能します。

ユーザーが Windows デスクトップ アプリを実行し、いくつかの結果を生成します。次に、デスクトップ アプリケーションは結果をデータベースにアップロードし、Rails Web アプリがこれを操作して興味深い処理を行います (たとえば、きれいなグラフを作成します)。

私の .NET の経験は限られていますが、RoR についてはかなりの経験があります。現在、使用するデータベースの種類と、2 つのアプリケーションで同じデータベースを操作する方法について悩んでいます。助言がありますか?

4

3 に答える 3

2
  1. 利用可能な任意のデータベースを使用できます。.NETまたはRORはオプションを制限しません。

  2. Railsアプリにデータベースをポーリングさせて上記のデータを探すことができます(あまり良くありません)。または、Webサービスを開発し、デスクトップアプリケーションにそれを呼び出してデータ操作をトリガーさせることもできます。

レール上のWebサービス。

C#WinFormsでWebサービスを利用する方法

C#WinFormsでのWebサービスの利用に関する詳細

于 2013-02-28T00:58:30.717 に答える
0

「現在、どのタイプのデータベースを使用するか迷っています」

あなたの毒に名前を付けてください!:) .NET と Ruby/RoR の両方から、次のような地球上のほぼすべてのデータベースと通信できます。

  • SQL Server、DB2、Oracle、MySql、ProgreSQL などのリレーショナル データベース。
  • MongoDB、CouchDB、RavenDB などのドキュメント データベース。
  • Cassandra、Dynamo、Riak、Redis、Memcache、Azure Table Storage などを含むその他の NOSQL キー値ストア。

あなたのニーズに合ったものを選んでください。

「2 つのアプリケーション間の通信を許可する方法」

これが何を意味しているのかよくわかりませんが、ある時点で、データをアップロードした後、アプリはデータの素晴らしいグラフを表示する Web ページを開く必要があるということを意味していると思いますか? その場合、これは些細なことであり、.NET アプリが Web ブラウザーのインスタンスを生成し、特定の Web ページを開くように要求する以外に、.NET アプリと RoR サイトを直接統合する必要はありません。

var process = new Process();
process.StartInfo.FileName = "iexplore";
process.StartInfo.Arguments = @"http:\\myreportgenerator.com?customerid=1234";
process.Start();

.NET アプリで RoR サイトに特定の処理を要求できるようにする場合は、REST Web サービス API を RoR サイトに追加することを検討してください。

さらに一歩進んで、.NET アプリからすべての DB コードを実際に排除し、REST (JSON/XML over HTTP) 呼び出しを介してデータを要求して RoR サイトに送信し、すべての DB IO を内部で実行することができます。

于 2013-02-28T01:06:15.723 に答える
0

データベースは、.NET と RoR の両方が通信できる任意のものにすることができます。私は RoR の専門家ではありませんが、.NET は任意のデータベースと通信できます。

アプリ間の通信は、データベースを介して行われます。C# アプリを介してデータを挿入/操作してから、データを読み取り、RoR アプリで処理します。2 つのアプリ間で直接 (アプリからアプリへ) 通信する必要はありません。

于 2013-02-28T00:50:21.967 に答える