public ResursaValoareFlat(ResursaValoare rv)
 {
     this.Id              = rv.IdresursaDict;
     this.Nume            = rv.IdresursaDictNavigation.Nume;
     this.Valoare         = rv.IdresursaDictNavigation.Valoare;
     this.TableValue      = rv.IdresursaDictNavigation.TableValue;
     this.ValoareData     = rv.Valoare;
     this.UniqueId        = rv.UniqueId;
     this.DataIntroducere = rv.Unique.DataIntroducere;
 }
        public async Task <IActionResult> PostResursaValoare([FromServices] CatalogROContext context, string id, [FromBody] ResursaValoareFlat[] resursaValoares)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var ids = resursaValoares.Select(it => it.Id).ToArray();
            var rds = await context.ResursaDict.Where(rd => ids.Contains(rd.Id)).ToArrayAsync();

            if (rds.Length != ids.Length)
            {
                throw new ArgumentException($"NOT same number of arguments {rds.Length} {ids.Length}");
            }
            var names = rds.Select(it => it.Nume).Distinct().ToArray();

            if (names?.Length != 1)
            {
                throw new ArgumentException($"multiple names");
            }
            if (names[0] != id)
            {
                throw new ArgumentException($"not correct name");
            }
            var ri = new ResursaInregistrare();

            ri.Identuziast     = 1;
            ri.UniqueId        = Guid.NewGuid();
            ri.DataIntroducere = DateTime.UtcNow;
            context.ResursaInregistrare.Add(ri);
            await context.SaveChangesAsync();

            foreach (var rv in resursaValoares)
            {
                var rvNew = new ResursaValoare();
                rvNew.IdresursaDict = rv.Id;
                rvNew.UniqueId      = ri.UniqueId;
                rvNew.Valoare       = rv.ValoareData;
                context.Add(rvNew);
            }
            await context.SaveChangesAsync();

            return(CreatedAtAction("GetResursaValoare", new { id = ri.UniqueId }));
        }