以下のクエリは、フォルダレコードが存在するかどうかを確認します。そうでなければ、新しいレコードを作成します。 Folderテーブルには、自動的にインクリメントされるIDというプライマリキーがあることに注意してください。 IDが作成されたか既に存在していたレコードのIDであるかを調べる必要があります。効率的なやり方が必要です。現在私はそれを見つけるために長い道のりをしています。LINQ - 既存または作成されたレコードのIDを取得する必要があります
// Checks to see if record exist
var record = (from pl in db.Folders
where pl.FolderSystem == "OP"
&& pl.OrgID == orgID
select pl).FirstOrDefault();
// If does not exist create the record
if (record == null)
{
db.Folders.Add(
new Folders
{
OrgID = orgID,
FolderSystem = "OP",
CreatedUserID = 1,
CreatedDate = DateTime.UtcNow,
});
db.SaveChanges();
}
ここで、作成する必要があったレコードのIDを見つける必要があります。 Need Folder.ID。それを見つけるより効率的な方法がありますか?私は、クエリを再構築するために開いています。
は 'ID列をOrgID'ていますか?もしそうなら、なぜあなたはそれを作るのを気にしていますか? (EFを使用してID列のためにそれを行うことは、実際には厄介なものです...) – DavidG
OrgIDはID列ではありません。それは単に組織のIDです。 ID列はIDと呼ばれます。 –