コード例 #1
0
        /// <summary>
        /// retreive Current instiated user instance which is data access entity from the database 
        /// </summary>
        /// <returns></returns>
        public UserProxy GetInstance()
        {
            if (this._userInstance != null && IsValid)
            {
                try
                {
                    NationalCriminalModelDataContext dbContext = new NationalCriminalModelDataContext();

                    var currentUser = dbContext.Users.FirstOrDefault(user => user.UserName.ToLower() == this.UserName && user.Password == this.Password);

                    if (currentUser != null)
                    {
                        return new UserProxy { Email = currentUser.Email, UserName = currentUser.UserName, Password = currentUser.Password };
                    }
                    return null;
                }
                catch
                {

                }

            }

            return null;
        }
コード例 #2
0
        /// <summary>
        /// Adds Criminal Entity to the database
        /// </summary>
        /// <returns></returns>
        public bool AddToDatabase()
        {
            if (this._criminalInstance != null && IsValid)
            {
                try
                {
                    if (PdfGenertor.GeneratorPdf(this))
                    {
                        var dbContext = new NationalCriminalModelDataContext();

                        this._criminalInstance.Id = Guid.NewGuid();

                        dbContext.Criminals.InsertOnSubmit(this._criminalInstance);

                        dbContext.SubmitChanges();

                        return(true);
                    }
                }
                catch
                {
                }
            }

            return(false);
        }
コード例 #3
0
        /// <summary>
        /// Add Current instiated user instance which is data access entity to the data base 
        /// </summary>
        /// <returns></returns>
        public bool AddToDataBase()
        {
            if (this._userInstance != null && IsValid)
            {
                try
                {
                    this._userInstance.Id = Guid.NewGuid();

                    NationalCriminalModelDataContext dbContext = new NationalCriminalModelDataContext();
                    dbContext.Users.InsertOnSubmit(this._userInstance);
                    dbContext.SubmitChanges();

                    return true;
                }
                catch
                {

                }

            }

            return false;
        }
コード例 #4
0
        /// <summary>
        /// Search for criminals
        /// </summary>
        /// <param name="searchCriteria"></param>
        /// <returns></returns>
        public static List <CriminalProxy> GetCriminals(CriminalSearchCriteria searchCriteria)
        {
            var criminalsResult = new List <CriminalProxy>();

            var dbContext = new NationalCriminalModelDataContext();


            //Search based on search criteria
            var criminals = dbContext.Criminals.ToList();

            if (searchCriteria != null)
            {
                if (!string.IsNullOrEmpty(searchCriteria.Name))
                {
                    criminals = criminals.Where(criminal => criminal.Name.ToLower().Contains(searchCriteria.Name.ToLower())).ToList();
                }


                if (!string.IsNullOrEmpty(searchCriteria.Nationality))
                {
                    criminals = criminals.Where(criminal => criminal.Nationality.ToLower().Contains(searchCriteria.Nationality.ToLower())).ToList();
                }



                if (searchCriteria.MinWeight > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Weight > searchCriteria.MinWeight).ToList();
                }

                if (searchCriteria.MinHeight > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Height > searchCriteria.MinHeight).ToList();
                }

                if (searchCriteria.MinAge > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Age > searchCriteria.MinAge).ToList();
                }

                if (searchCriteria.MaxWeight > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Weight < searchCriteria.MaxWeight).ToList();
                }

                if (searchCriteria.MaxHeight > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Height < searchCriteria.MaxHeight).ToList();
                }

                if (searchCriteria.MaxAge > 0)
                {
                    criminals = criminals.Where(criminal => criminal.Age < searchCriteria.MaxAge).ToList();
                }



                if (!searchCriteria.IgnoreGender)
                {
                    criminals = criminals.Where(criminal => criminal.IsMale == searchCriteria.IsMale).ToList();
                }
            }



            foreach (var criminal in criminals)
            {
                if (criminalsResult.Count > searchCriteria.MaxResultCount)
                {
                    break;
                }

                criminalsResult.Add(new CriminalProxy(criminal));
            }

            return(criminalsResult);
        }