我在ASP.NET Core中有多个文件上传的问题 . 当我一次上传多个文件时,我从SQL Server数据库收到此错误:

SqlException:当IDENTITY_INSERT设置为OFF时,无法在表'photos'中为identity列插入显式值 .

我的代码:

public async Task<IActionResult> Create(Photos photos)
    {
        if (ModelState.IsValid)
        {
            var date = DateTime.UtcNow.AddHours(4);
            var photoAddDate = photos.PhotoAddedData = date.ToString("yyyy- 
            MM-dd','HH:mm:ss", CultureInfo.InvariantCulture);

            foreach (var file in photos.FormFile)
            {
                var filePath = Path.Combine(_hostingEnvironment.WebRootPath, 
                Path.GetFileName(file.FileName));
                photos.PhotoPath = "/" + Path.GetFileName(file.FileName);
                var stream = new FileStream(filePath, FileMode.Create);
                await file.CopyToAsync(stream);
                photos.PhotoPath = filePath;
                _context.Photos.Add(photos);
                await _context.SaveChangesAsync();
            }

            return RedirectToAction(nameof(Index));
      }

然后我尝试使用此代码:

var transaction = _context.Database.BeginTransaction();
_context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT[dbo].[photos]ON;");
_context.Photos.Add(photos);
await _context.SaveChangesAsync();
_context.Database.ExecuteSqlCommand("SET IDENTITY_INSERT[dbo].[photos] OFF;");
transaction.Commit();

并得到另一个错误:

SqlException:当IDENTITY_INSERT设置为ON或复制用户插入NOT FOR REPLICATION标识列时,必须为表'photos'中的标识列指定显式值 .

谁能帮我这个?非常感谢你