Example #1
0
    // Method for adding vehicle.
    //
    public bool AddCarToProfile(string veType, string veMake, string veModel, int veYear, int veMiles, string veDesc, string imgUrl, string valCat)
    {
        using (SwapEntities myEnt = new SwapEntities())
        {
            //var getValcat = (from tbl in myEnt.ValueCategories
            //                 where tbl.Range == valCat
            //                 select tbl.Category).SingleOrDefault();

            Guid veGuid    = Guid.NewGuid();
            byte getValcat = Convert.ToByte(valCat);
            int  veCount   = (from tbl in myEnt.UserVehicles
                              where tbl.UserId == PublicUserId
                              select tbl).Count();

            if (veCount <= 1)
            {
                var newVehicle = new UserVehicle();
                newVehicle.Id                 = veGuid;
                newVehicle.UserId             = PublicUserId;
                newVehicle.UserName           = PublicUserName;
                newVehicle.VehicleType        = veType;
                newVehicle.VehicleMake        = veMake;
                newVehicle.VehicleModel       = veModel;
                newVehicle.VehicleYear        = veYear;
                newVehicle.VehicleMiles       = veMiles;
                newVehicle.VehicleDescription = veDesc;
                newVehicle.ValueCategory      = getValcat;
                newVehicle.IsActive           = true;

                myEnt.AddToUserVehicles(newVehicle);
                myEnt.SaveChanges();

                // Add image class, for adding initial vehicle image..

                AddVehicleImage(imgUrl, veGuid, true);

                // Check value category, and set anew if required.

                var proValuecategory = (from tbl in myEnt.ProfileProperties
                                        where tbl.UserId == PublicUserId
                                        select tbl).SingleOrDefault();

                if (proValuecategory != null)
                {
                    byte proValue = Convert.ToByte(proValuecategory.ValueCategory);
                    if (proValue < getValcat || proValue == null)
                    {
                        proValuecategory.ValueCategory = getValcat;
                        myEnt.SaveChanges();
                    }
                }
                return(true);
            }
            else
            {
                return(false);
            }
        }
    }