コード例 #1
0
        public async Task <PackageDto> UpdatePackage(PackageDto package, int lineId, string clientId)
        {
            using (CellularCompanyContext db = new CellularCompanyContext())
            {
                try
                {
                    if (package != null)
                    {
                        if (CheckIfPackageBelongsToClient(package, lineId, clientId))
                        {
                            PackageEntity entity = package.ToModel();
                            entity.PackageId = package.PackageId;
                            db.Packages.Attach(entity);
                            foreach (var propName in db.Entry(entity).CurrentValues.PropertyNames)
                            {
                                if (propName != "PackageId")
                                {
                                    db.Entry(entity).Property(propName).IsModified = true;
                                }
                            }
                            await db.SaveChangesAsync();

                            return(entity.ToDto());
                        }
                        return(null);
                    }
                    return(null);
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message);
                    return(null);
                }
            }
        }
コード例 #2
0
        public async Task <PackageDto> CreatePackage(PackageDto package, PackageIncludesDto packageIncludes)
        {
            using (CellularCompanyContext db = new CellularCompanyContext())
            {
                try
                {
                    if (package != null)
                    {
                        PackageEntity entity = new PackageEntity()
                        {
                            PackageName       = package.PackageName,
                            PackageTotalPrice = package.PackageTotalPrice,
                        };
                        db.PackageIncludes.Add(packageIncludes.ToModel());
                        await db.SaveChangesAsync();

                        return(entity.ToDto());
                    }
                    return(null);
                }
                catch (Exception ex)
                {
                    Debug.WriteLine(ex.Message);
                    return(null);
                }
            }
        }