Example #1
0
        public Backer CreateBacker(BackerOption backOption)
        {
            Backer backer = new Backer
            {
                FirstName = backOption.FirstName,
                LastName  = backOption.LastName,
                Email     = backOption.Email,
                Username  = backOption.Username,
                Password  = backOption.Password,
                Dob       = backOption.Dob
            };

            db.Backers.Add(backer);
            db.SaveChanges();

            return(backer);
        }
Example #2
0
        //CRUD
        // create read update delete

        public Project CreateProject(ProjectOption projOption)
        {
            ProjectCreatorManagement pcMng = new ProjectCreatorManagement(db);
            Project project = new Project
            {
                ProjectCreator = pcMng.FindProjecCreatortById(projOption.ProjectCreatorId),
                Title          = projOption.Title,
                Description    = projOption.Description,
                Category       = projOption.Category,
                EndDate        = projOption.EndDate,
                Goal           = projOption.Goal,
                Progress       = 0,
                StartDate      = DateTime.Now,
                State          = true,
                CurrentAmount  = 0
            };

            db.Projects.Add(project);
            db.SaveChanges();

            return(project);
        }
Example #3
0
        public ProjectStatus CreateProjectStatus(ProjectStatusOption psOption)
        {
            Project project = db.Projects.Find(psOption.ProjectId);

            ProjectStatus ps = new ProjectStatus
            {
                Title   = psOption.Title,
                Project = project,
                Date    = DateTime.Now
            };

            db.ProjectStatuses.Add(ps);
            db.SaveChanges();

            return(ps);
        }
Example #4
0
        public Media CreateMedia(MediaOption mediaOption)
        {
            Project project = db.Projects.Find(mediaOption.ProjectId);

            Media media = new Media
            {
                Type    = mediaOption.Type,
                URL     = mediaOption.URL,
                Project = project
            };

            db.Medias.Add(media);
            db.SaveChanges();

            return(media);
        }
Example #5
0
        public ProjectCreator CreateProjectCreator(ProjectCreatorOption pcOption)
        {
            ProjectCreator pc = new ProjectCreator
            {
                FirstName = pcOption.FirstName,
                LastName  = pcOption.LastName,
                Email     = pcOption.Email,
                Username  = pcOption.Username,
                Password  = pcOption.Password,
                Dob       = pcOption.Dob
            };

            db.ProjectCreators.Add(pc);
            db.SaveChanges();

            return(pc);
        }
Example #6
0
        public Package CreatePackage(PackageOption packOption)
        {
            Project project = db.Projects.Find(packOption.ProjectId);

            Package package = new Package
            {
                Amount      = packOption.Amount,
                Reward      = packOption.Reward,
                Description = packOption.Description,
                Project     = project
            };

            db.Packages.Add(package);
            db.SaveChanges();

            return(package);
        }
Example #7
0
        //Code First
        //Domain Driven Design
        public void CodeFirstHandler()
        {
            //Once Domain class and Context class is created ,
            //if we instantiate the context class for any CRUD  then the DB Objects will be created at first
            using (var ctx = new CFDbContext())
            {
                CFStudent stud = new CFStudent()
                {
                    StudentName = "New Student"
                };

                ctx.CFStudents.Add(stud);
                ctx.SaveChanges();
            }

            //Refer default Entity framework conventions on DB Object mapping - http://www.entityframeworktutorial.net/code-first/code-first-conventions.aspx

            //EF logs all the activity[Command queries] performed by EF using context.database.Log
            //Context.Database.Log is an Action<string> so that you can attach any method which has one string parameter and void return type.For example:
            //public class Logger
            //{
            //    public static void Log(string message)
            //    {
            //        Console.WriteLine("EF Message: {0} ", message);
            //    }
            //}
            //using (var context = new CFDbContext())
            //{
            //    context.Database.Log = Logger.Log;
            //}
            //public class MyLogger
            //{
            //    public void Log(string component, string message)
            //    {
            //        //Can pass on the same to Log4Net as Info
            //        Console.WriteLine("Component: {0} Message: {1} ", component, message);
            //    }
            //}
            //using (var context = new BlogContext())
            //{
            //    var logger = new MyLogger();
            //    context.Database.Log = s => logger.Log("EFApp", s);
            //    var blog = context.Blogs.First(b => b.Title == "One Unicorn");
            //    blog.Posts.First().Title = "Green Eggs and Ham";
            //    blog.Posts.Add(new Post { Title = "I do not like them!" });
            //    context.SaveChangesAsync().Wait();
            //}
            //https://msdn.microsoft.com/en-us/library/dn469464(v=vs.113).aspx



            //Transaction Support
            //using (System.Data.Entity.DbContextTransaction dbTran = context.Database.BeginTransaction())
            //{
            //    try
            //    {

            //DbSet.AddRange/RemoveRange adds/remove collection(IEnumerable) of entities to the DbContext

            //CodeFirst SPROC


            //Inheritance Strategy in Code - First: not discissed in detail - http://www.entityframeworktutorial.net/code-first/inheritance-strategy-in-code-first.aspx
        }