IDENTITY フィールドは知っていますが、問題を解決するために使用できないと感じています。
複数のクライアントがいるとしましょう。各クライアントには複数の注文があります。各クライアントは、注文に固有の順番に番号を付ける必要があります。
テーブル構造の例:
Orders:
OrderID | ClientID | ClientOrderID | etc...
このテーブルの行の例は次のとおりです。
OrderID | ClientID | ClientOrderID | etc...
1 | 1 | 1 | ...
2 | 1 | 2 | ...
3 | 2 | 1 | ...
4 | 3 | 1 | ...
5 | 1 | 3 | ...
6 | 2 | 2 | ...
クライアントのMAX ClientOrderIDを取得し、その値をINSERTに使用するのが単純な方法であることはわかっていますが、これは同時実行の問題の影響を受ける可能性があります。トランザクションを使用することを検討していましたが、これに使用できる最も広い分離範囲がよくわかりません。LINQ to SQL を使用しますが、それは関係ないと感じています。