数年ぶりに .NET 開発に戻ってきましたが、特に LINQ を使用すると、データへのアクセス方法が変わり、はるかに簡単になったようです。たとえば、ASP.NET MVC Web サイトでは、次のことができます。
- アイテムを追加
- LINQ-to-SQL クラスを追加する
- データベース テーブルを LINQ-to-SQL オブジェクト リレーショナル デザイナーにドラッグし、[保存] をクリックします。
- LINQワンライナーを介してデータにアクセスして操作します(ここで学びました:http://www.asp.net/learn/mvc/tutorial-11-cs.aspx)
これは素晴らしいように見えますが、実際にはどのように機能しますか?
- 上記の LINQ-to-SQL シナリオは実際のプロジェクトで使用するものですか、それとも簡単なスキャフォールディング テクノロジですか。つまり、データベースでフィールドとテーブルの追加、削除を開始するとどうなるか、LINQ-to-SQL クラスはどのように機能しますか同期を維持しますか?
そして、この分野のすべての新しいテクノロジーをどのように理解すればよいでしょうか。
- サブソニックはどこに収まりますか?
- Astoria (ADO.NET Data Services) はどこに適合しますか?
- NHibernate はどこに適合しますか?
- LINQ-to-SQL で他のデータベースを使用するにはどうすればよいですか (オブジェクト リレーショナル デザイナーで SQLite テーブルをドラッグしようとしたところ、「サポートされていません」というエラーが表示されました)、または LINQ-to-SQL は SQL Server 専用ですか?
- LINQ-to-XML は LINQ-to-SQL と同じように機能しますか? たとえば、XML ファイルをデザイナーにドラッグして LINQ でアクセスできますか? それとも、独自のコードを記述する必要がありますか?
LINQ-to-Entities は LINQ-to-SQL のように機能しますか。つまり、自動的に生成されたクラスですが、より多くのオプションがありますか?
ADO.NET とその DataTables および DataSets は、LINQ がある今では古いテクノロジですか? LINQ-to-ADO.NET は理にかなっていますか?
Azure は、もはや RDBMS を実際に持っていない場所のどこに適合しますか?
- UI がただ RESTful に WCF と話している、または Web サービスと話しているだけの場合、ESB はどこに収まるのでしょうか?
非常に多くのオプションが用意されていますが、プロジェクトにこれらのテクノロジのいずれかを選択できるとしたら、どれを選択しますか?またその理由は何ですか?