2011-01-23 11 views
5

DBにフラットファイルを格納するためのアプリケーションを開発する必要があります。コンソールアプリケーションとSQL Serverは同じマシンにありますが、どちらのオプションが最適ですか?WCF Data ServicesまたはEntity Framework

  • WCF Data Servicesのを作成し、コンソールアプリケーションを直接Entity Frameworkのエンティティ

一般的に、コンソールアプリケーションから

  • 使用からそれを使用するには、WCF Data ServicesのかEntity Frameworkのを使用することをお勧めしとき?

    感謝!

  • +1

    これはリンゴとオレンジであり、それぞれ異なる問題を解決します。 WCF Data Servicesは、1つのアプリケーションだけがETLデータ用にアプリケーションを使用する場合には適していないようです。 –

    答えて

    20

    ものは2つの全く異なる技術です:

    • Entity Frameworkのは、データベースへのアクセスを容易にするために、ORマッパーです。これをたとえばと比較することができます。 Hibernate、Linq-SQL、Subsonic、Genome、またはその他のORマッパー

    • WCF Data Servicesは、HTTP/RESTを介して外部にデータモデルを公開する方法です。彼らは全く別の獣だ、と多くのソリューションでは、彼らは一緒に働くことになります - - 一方が他方を置き換えることはできませんあなたは2を比較することはできませんレガシーASMXのWebサービス、純粋なWCFサービス、他のサービス技術

    にこれを比較します。

    データベースからデータを読み取る必要があるコンソールアプリケーションを使用している場合、Entity Frameworkを直接使用することもできます。この場合、コンソールアプリケーションはデータベースに直接接続する必要があり、Entity Framework技術。

    WCFデータサービスを使用してデータを公開するオプションは、別のレイヤーを追加します。コンソールアプリケーションはデータに直接アクセスしませんが、WCFデータサービスを呼び出すだけです。これで基本的には、クライアントとしてのコンソールアプリケーションと、データを提供するサービスアプリケーションの2つの部分があります。その場合、クライアントはEntity Frameworkやそのようなものについて何も知る必要はありません。たとえば、2番目のクライアントを簡単に追加することもできます。ウェブアプリ。しかし、データを提供するサービスアプリケーションは、Entity Frameworkを使用してデータベースに直接接続できる必要があります。

    最後に、エンティティフレームワークをWCF Data Servicesに置き換えているわけではありません。間接的に別のレイヤーを追加するだけですが、最終的にデータを取得するにはまだ何らかのデータが必要です(Entity Frameworkのような)アクセス技術です。

    +0

    多くの感謝!今それは明らかです.. – andrew0007

    関連する問題