3

まず、環境について少し説明します。

Clearviewと呼ばれるプログラムを使用して、コールセンターやフィールドサービス作業など、お客様とのサービス関係を管理します。クライアントとフィールド技術者をより適切にサポートするために、Clearviewとレポートのサービスレコードへのアクセスを提供するWebサイトも開発しました。時間の経過とともに、動作をカスタマイズして新しい機能を追加する必要が生じ、このWebサイトとそのデータベースに結び付けられるものがますます増えています。

この時点で、一部はClearviewデータベースで、一部はWebサイトデータベースで定義されている会社などを扱っています。また、電話システムのスクリプトを同じWebサイトに結び付け始めています。これには、電話システム自体のデータベースとも通信する必要があります。

これらはすべてセットアップされて機能しています...しかし、すべてを処理するための適切なデータレイヤーがありません。LinqからSQLに移行し、使用できる2つのDBMLと、Linqについて聞く前に作成したいくつかのカスタムクラス、およびいくつかの古いスタイルのADOデータセットがあります。そうそう、基本的に物事は混乱です。

私が必要としているのは、アプリケーションに単一のフロントエンドを提供し、バックエンドですべてを適切なデータベースに管理するデータレイヤーです。

複数のソースからクラスを構築できるEntityFrameworkについて聞いたことがありますが、データベースは1つしか存在できないことがわかりました。だから問題は、どうすればこれを進めることができるかということです。

私は現在、データベースごとにLinq To SQLクラスをすべて設定してから、それらを結び付けるLinq互換のフロントエンドを手動で作成することを考えています。多くの作業のように思えますが、Linqの制限(更新できないなど)を考えると、それが良い考えかどうかはわかりません。

Entity Frameworkを使用して、より良い結果が得られる何かを行うことはできますか?別のツールを調べる必要がありますか?私は夢中ですか?

4

3 に答える 3

1

Linq2SQlやEFなどのツールを使用したいが、複数のDBMLSを管理する必要がない場合(またはEFや他のツールで呼び出された場合でも)、ClearViewまたはPhoneを参照するビューをWebサイトデータベースに作成できます。システムのDB。

これにより、Webサイトをデータベース構造から切り離すことができます。Linq2SqlとEFは、エンティティのソースとしてビューを使用できると思います。彼らがnHibernateを見ることができない場合。

これにより、さまざまなデータソースから取得した複合エンティティを使用することもできます。SQLServerのビューの更新にはいくつかの制限があります。ただし、ビューでトリガーの代わりに独自のトリガーを定義して、実際の挿入更新削除ステートメントを実行することができます。

于 2009-01-06T17:50:27.953 に答える
0

私のプロジェクトでは、L2Sはビューと完全に連携します。ちょっとしたトリックをするだけです。1。セカンダリDBテーブルをビューとして現在のDBに追加します。2. Designerで、ビューのidフィールドに主キー属性を追加します。3.ここでのみ、元のDBに必要な他のテーブルに関連付けを追加します。

これで、ナビゲーションに使用できるビューが表示される場合があります。

于 2010-10-28T16:21:45.563 に答える