Надеюсь, название не слишком запутанное. Я пытаюсь создать папки с идентификаторами объектов linq-to-sql. На самом деле я должен создать папки, прежде чем я должен сохранить их. Я буду использовать их, чтобы сохранить загруженные пользователем файлы. Как видите, мне нужно создать папку с FileID, прежде чем я смогу сохранить ее там. Поэтому я просто сохраняю запись, которая будет отредактирована или, возможно, удалена
File newFile = new File();
...//add some values to fields so they don't throw rule violations
db.AddFile(newFile);
db.Save();
System.IO.Directory.CreateDirectory("..Uploads/"+newFile.FileId.ToString());
После этого мне придется отредактировать некоторые поля и снова сохранить. Конечно, пользователь может остановить загрузку, и мне придется удалить его. Я знаю, что могу написать хранимую процедуру для получения следующего доступного FileID, но некоторые другие загрузки, происходящие в то же время, получат тот же номер Поэтому они пишут в одном каталоге, а это то, чего я не хочу. Стоит ли продолжать с этим, будут ли проблемы? Вы можете придумать лучший способ?