Entity Framework 5.0 CodeFirst を使用してアプリケーションに組み込みデータベースを提供するプロジェクトを開発している学生です。まったく同じローカル データベースを持つサーバーとクライアント アプリケーションがありますが、2 つの別々のソリューションがあります。
データベースには、図面を含めることができるプロジェクト テーブルがあり、図面にはいくつかのコンポーネントを含めることができます。したがって、クライアントがサーバー上の特定のプロジェクトの図面を照会したい場合は、次のメソッドを作成しました。
GetDrawings(int ProjectId)
{
var result = suedocode: get all drawings;
}
特定のプロジェクトのすべての図面を取得する必要があります。
私の大きな問題は. サーバーに、次の ID を持つ 10 個のプロジェクトがあるとします: ProjectId: 1、...、ProjectId: 10。
クライアント アプリケーションが ProjectId = 3 でサーバー上のプロジェクトをクエリし、それをクライアントのローカル データベースに保存すると、ProjectId は ProjectId = 1 の新しい ID を取得します。これは、最初のプロジェクトがクライアント データベースに格納されているためです。新しく保存したプロジェクトの図面を照会して、関連付けられた ProjectId を使用すると、ProjectId=1 のサーバー上のプロジェクトに関連付けられた図面が実際に取得されます。
したがって、大きな問題は、サーバーに Id を生成させ、クライアントがプロジェクトを保存するときにそれらの正確な Id を使用できるかどうかです。そのため、サーバー上の ProjectId=4 がクライアントのデータベースに格納されると、テーブル内の最初のプロジェクト ストアであっても、id は ProjectId=4 になります。
理解できるように、私の問題を説明していただければ幸いです。
前もって感謝します