問題タブ [linq-to-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
5 に答える
5609 参照

asp.net - 複数のDataContextクラスは適切ですか?

ASP.net 3.5アプリケーションでLinqToSqlを完全に使用するには、DataContext クラスを作成する必要があります(これは通常、VS 2008のデザイナーを使用して行われます)。UIの観点からは、DataContextは、LinqToSqlを介して公開するデータベースのセクションの設計であり、LinqToSqlのORM機能のセットアップに不可欠です。

私の質問は、すべてのテーブルが外部キーを介して何らかの方法で相互接続されている大規模なデータベースを使用するプロジェクトを設定していることです。私の最初の傾向は、データベース全体をモデル化する1つの巨大なDataContextクラスを作成することです。そうすれば、理論的には(実際にこれが必要かどうかはわかりませんが)、LinqToSqlを介して生成された外部キー接続を使用して、コード内の関連オブジェクト間を簡単に移動したり、関連オブジェクトを挿入したりできます。

ただし、少し考えてみたところ、データベース内の特定の名前空間または論理的に相互に関連するセクションにそれぞれ関連する複数のDataContextクラスを作成する方が理にかなっていると考えています。私の主な懸念は、データベースの特定の領域に関連する個々の操作のために1つの巨大なDataContextクラスを常にインスタンス化して破棄すると、アプリケーションリソースに不要な負荷がかかることです。さらに、1つの大きなファイルよりも小さなDataContextファイルを作成および管理する方が簡単です。私が失うことは、LinqToSqlを介してナビゲートできないデータベースのいくつかの離れたセクションがあることです(関係のチェーンが実際のデータベースでそれらを接続している場合でも)。さらに、複数のDataContextに存在するテーブルクラスがいくつかあります。

1つの非常に大きなDataContextクラス(DB全体に対応)の代わりに(またはそれに加えて)複数のDataContext(DB名前空間に対応)が適切かどうかについての考えや経験はありますか?

0 投票する
6 に答える
23218 参照

c# - LinqDataSource - 返されるレコードの量を制限できますか?

LinqDataSourceページでコントロールを使用して、返されるレコードの量を制限したいと考えています。コードビハインドを使用すると、次のようなことができることがわかります。

LinqDataSourceこのようなことがコントロールで可能かどうかは誰にも分かりますか?

[アップデート]

GridView や Repeaterではなく、コントロールLinqDataSourceと共に使用します。ウィザードには、返されるレコードの数を制限する機能はありません。詳細オプションでは、有効な削除、挿入、および更新のみが許可されます。ListViewLinqDataSource

0 投票する
2 に答える
1709 参照

sql-server - LINQ を使用した場合のデータベース パフォーマンスのオーバーヘッドはどれくらいですか?

両方とも SQL Server 2008 バックエンドを使用し、ほとんどが低レベルの C でロードされたカスタムの最適化されたクエリと比較して、C# と LINQ を使用すると、データベース パフォーマンスのオーバーヘッドはどのくらいになりますか?

ここで具体的に考えているのは、かなりデータ集約型のプログラムがあり、画面ごとに少なくとも 1 回はデータの更新または更新を行い、50 ~ 100 人の同時ユーザーがいる場合です。

0 投票する
1 に答える
2403 参照

linq-to-sql - 列挙型へのLINQからSQLへの文字列

LINQ to SQLを使用すると、列のタイプを指定することで、テーブルマッピングを自動的に列挙型に変換できます。これは文字列または整数で機能します。

文字列がどのように見えるかをより詳細に指定できるように、変換の大文字と小文字を区別しないようにするか、カスタムマッピングクラスまたは拡張メソッドをミックスに追加する方法はありますか?

そうする理由は、データスキーマがすでに設定されている(そしていくつかのレガシーアプリによって依存されている)システムの新しいファンキーなC#コード内に、より良い命名規則を提供して、データベース内の実際のテキストができるようにするためかもしれません。変更する必要があります。

0 投票する
2 に答える
1640 参照

.net - コンパイルされたLINQと通常のLINQをいつ使用する必要がありますか

LINQのパフォーマンスを読んだばかりですが、コンパイル済みLINQを使用することで得られる金額は膨大です。

さて、なぜ私は常にコンパイルされたLINQを使用しないのですか?

0 投票する
17 に答える
281559 参照

.net - EntityFrameworkとLINQtoSQL

.NET v3.5 SP1が(VS2008 SP1と共に)リリースされたので、.NETエンティティフレームワークにアクセスできるようになりました。

私の質問はこれです。EntityFrameworkとLINQtoSQLをORMとして使用するかどうかを決定しようとする場合、違いは何ですか?

私の理解では、Entity Framework(LINQ to Entitiesで使用する場合)は、LINQ to SQLの「兄貴」ですか?これが事実である場合-それはどのような利点がありますか?LINQ to SQLだけではできないことは何ができるでしょうか?

0 投票する
13 に答える
98786 参照

c# - Linq 演算子を条件付きで適用するにはどうすればよいですか?

私たちは、ログ ビューアーに取り組んでいます。使用には、ユーザー、重大度などでフィルター処理するオプションがあります。Sql の時代には、クエリ文字列に追加していましたが、Linq でそれを行いたいと考えています。条件付きで where 句を追加するにはどうすればよいですか?

0 投票する
16 に答える
6706 参照

sql - SQLストアドプロシージャの単体テストで成功した人はいますか?

C#/C++ コード用に作成した単体テストが本当に効果があることがわかりました。しかし、ストアド プロシージャにはまだ数千行のビジネス ロジックがあり、実際にテストされるのは、製品が多数のユーザーに公開されたときだけです。

さらに悪いことに、SP 間で一時テーブルを渡すときにパフォーマンスが低下するため、これらのストアド プロシージャの一部が非常に長くなることがあります。これにより、コードを単純化するためのリファクタリングが妨げられました。

いくつかの重要なストアド プロシージャを中心に単体テストを作成する試みを何度か行いました (主にパフォーマンスのテスト) が、これらのテスト用にテスト データを設定するのは非常に困難であることがわかりました。たとえば、テスト データベースをコピーすることになります。これに加えて、テストは変更に非常に敏感になり、ストアド プロシージャへの最小の変更でさえも敏感になります。またはテーブルは、テストに大量の変更を必要とします。そのため、これらのデータベース テストが断続的に失敗したために多くのビルドが機能しなくなった後、ビルド プロセスから除外する必要がありました。

私の質問の主な部分は、ストアド プロシージャの単体テストを正常に作成したことがありますか?

私の質問の 2 番目の部分は、単体テストが linq で簡単になるかどうかです。

テスト データのテーブルを設定するのではなく、単純にテスト オブジェクトのコレクションを作成し、「linq to objects」の状況で linq コードをテストできるのではないかと考えていました。(私はlinqにまったく慣れていないので、これがまったく機能するかどうかわかりません)

0 投票する
22 に答える
110513 参照

linq - LINQ-to-SQLとストアドプロシージャ?

StackOverflow( LINQの初心者ガイド)の「LINQの初心者向けガイド」の投稿を確認しましたが、フォローアップの質問がありました。

私たちは、データベース操作のほぼすべてがかなり単純なデータ取得である新しいプロジェクトを立ち上げようとしています(すでにデータを書き込んでいるプロジェクトの別のセグメントがあります)。これまでの他のプロジェクトのほとんどは、そのようなものにストアドプロシージャを利用しています。ただし、もっと理にかなっている場合は、LINQ-to-SQLを活用したいと思います。

したがって、問題は次のとおりです。単純なデータ取得の場合、LINQ-to-SQLとストアドプロシージャのどちらのアプローチが優れていますか?特定の賛否両論はありますか?

ありがとう。

0 投票する
3 に答える
1943 参照

linq - LINQ to SQL Mapping From Money to Double

I'm working with LINQ for the first time and wanted to get the Mapping to work when I have a money type in SQL, but my domain object property is of type double. How can I express this in the XML file, or in code so that the mapping does not throw the usual "invalid cast" exception?