1

私の謙虚な意見では、Microsoft はデータベース管理に関するルールを 4 ~ 5 年ごとに変更しています。RDO が SQL サーバーに接続するためのソリューションだった昔のことを思い出します。RDO は時代遅れだったので、ADO を使用するように知識を更新しました。ADO は非常に優れていて効果的でしたが、つい最近、私は自分でプログラミングをして、ADO.NET を使用するための知識を再確認していることに気付きました。現在、LINQ を使用して最初のプロジェクトに取り組んでいます。

あなたの意見は何ですか?LINQ は次の標準になる準備ができていますか、それとも .NET 2.0 のように ADO.NET を使用し続ける必要がありますか? LINQ への変更が、それが提供する利点と比較してそれほど高くないかどうか、あなた自身の経験から知る必要があります。

4

4 に答える 4

6

あなたは何を待つべきですか?あなたがそれについて考えるならば、あなたが過去に書いたであろうどんなコードも、それが当時と同じように今日もうまくいくでしょう。LINQは、これらの以前の方法のほとんどよりも生産性が高いですか?私の意見では、そうですが、それなら私はLINQが本当に好きです。Linq To Entitiesの方が優れていますか?いいえ、それはまったく異なり、正直に言うと、多くの場合、かなり機能します。LINQのIJW(それはうまく機能します!)要素は本当に信じられないほどです。これは、非常に長い間Microsoftから生まれた最もエレガントなテクノロジーの1つです。将来、もっと良いものはありますか?最も可能性が高い。しかし、私たちは現在生きており、コーディングを行っています。将来を待つことは愚か者の用事です。地平線のすぐ上には常により良いものがあるからです。

とはいえ、これは抽象化の良い議論です。クラスを設計するときに、自分自身に問いかけてください。アプリケーションの残りの部分を壊すことなく、データレイヤーのX(Linq、ADO.Netなど)を置き換えることはできますか?「はい」と答えられる場合は、おそらくかなり良いデザインになっています。適切なデータレイヤーを実行することは実際にはそれほど難しくなく、Linqから他のORM(エンティティへのリンク、nHibernateなど)に切り替える柔軟性、または完全に異なるバックエンドに切り替える柔軟性を可能にします。 Webサービス、または次の素晴らしいものは何でも。

また、気が楽になれば、LINQはどこにも行きません。言語の一部であり、モノラルで実装されており、より多くのlinqプロバイダーが追加されています。Microsoftが別のテクノロジに移行した場合でも、Linqを使用およびサポートしているユーザーが表示されます。地獄、それはすでにある程度Linq to Entitiesで起こっており、Linqを使用している開発者の大多数がL2Eをほとんど無視していることがわかります。今日LINQを使用することの唯一の大きな欠点は、無料で利用できる堅固なMySQL / PostOgre linqプロバイダーがないことですが、いくつかの作業が行われています。

于 2009-05-08T00:41:38.813 に答える
2

言語としてのLINQ機能は「決して」(決して正しくないとは言わないで)なくなるので、それを学びましょう。これにより、任意のデータ構造を照会できる可能性があります。つまり、LINQを使用して、LINQtoSQLエンティティ、XML、データセットなどをクエリできます。

ただし、LINQ to SQLについて具体的に話しているのであれば、私はあなたに同意します。

2年未満前、LINQtoSQLはここにとどまりました。現在は、EntityFrameworkを優先して削除されています。

さて、そうです、彼らは多くのLINQ toSQL機能がEntityFrameworkに統合されると言っていますが、それにもかかわらず、多くの人が採用しているように、LINQ to SQLは廃止されており、確かにまだ多くの余地がありました改善。

同様の懸念については、ここのコメントを確認してください。

于 2009-05-08T00:44:32.647 に答える
2

ado はデータの取得に使用され、linq はクエリ言語であることを明確にする必要があります。両方を使用する必要があり、それらは同じではありません。Linq to Sql はデータ アクセス レイヤーを提供します。これはあなたが話していることかもしれませんが、Microsoft は既にサポートを中止し、Linq to Entities を使用することを発表しています。明日、LinqToEntitiesADO.NET# がリリースされる予定です。

于 2009-05-08T00:27:32.500 に答える
2

LINQ はついでにデータベースに関するものです。これは、構造化されたデータ アクセス全般をより包括的に抽象化するという Microsoft の考えです。しかし、それが最初に現れたのは LINQ-to-SQL だったので、それは人々が持っていた最初の認識です。そしてもちろん、開発者、特に SQL にあまり慣れていない開発者は、SQL を気に入っています。

しかし、あなたが言及した他の項目よりも、SQLの代替と考えています。

LINQ の使用を開始する必要がありますか? 最初にマイクロソフトのサイト情報を読んで、概念的に同意するかどうかを確認してください。これは良い概念だと思います。Microsoft には優秀な人材が取り組んでおり、競争相手もあまりいません。したがって、.NET 組織としてしっかりと参加している限り、おそらく気に入っていただけるでしょう。Microsoft 以外の世界も最終的に参加するという兆候がいくつかありますが、時期は未定です。

于 2009-05-08T00:29:42.977 に答える