private void CreateInsertBackup(DBBackUpPackage dbBackUpPackage, string fileName)
        {
            try
              {
            List<string> lines = new List<string>();

            lines.Add("USE [SmartWorking]");
            lines.Add("GO");

            lines.Add("SET IDENTITY_INSERT [dbo].[Recipes] ON");
            foreach (RecipePrimitive primitive in dbBackUpPackage.RecipeList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Recipes] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Drivers] ON");
            foreach (DriverPrimitive primitive in dbBackUpPackage.DriverList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Drivers] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Buildings] ON");
            foreach (BuildingPrimitive primitive in dbBackUpPackage.BuildingList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Buildings] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Contractors] ON");
            foreach (ContractorPrimitive primitive in dbBackUpPackage.ContractorList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Contractors] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Clients] ON");
            foreach (ClientPrimitive primitive in dbBackUpPackage.ClientList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Clients] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[ClientBuildings] ON");
            foreach (ClientBuildingPrimitive primitive in dbBackUpPackage.ClientBuildingList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[ClientBuildings] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Cars] ON");
            foreach (CarPrimitive primitive in dbBackUpPackage.CarList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Cars] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Materials] ON");
            foreach (MaterialPrimitive primitive in dbBackUpPackage.MaterialList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Materials] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[RecipeComponents] ON");
            foreach (RecipeComponentPrimitive primitive in dbBackUpPackage.RecipeComponentList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[RecipeComponents] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[Orders] ON");
            foreach (OrderPrimitive primitive in dbBackUpPackage.OrderList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[Orders] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[MaterialStocks] ON");
            foreach (MaterialStockPrimitive primitive in dbBackUpPackage.MaterialStockList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[MaterialStocks] OFF");

            lines.Add("SET IDENTITY_INSERT [dbo].[DeliveryNotes] ON");
            foreach (DeliveryNotePrimitive primitive in dbBackUpPackage.DeliveryNoteList)
            {
              lines.Add(primitive.GetDBInsertQuery());
            }
            lines.Add("SET IDENTITY_INSERT [dbo].[DeliveryNotes] OFF");

            System.IO.File.WriteAllLines(fileName, lines);
              }
              catch (Exception)
              {
            //TODO:
              }
        }
Esempio n. 2
0
        public DBBackUpPackage GetBackUpData()
        {
            try
              {

            DBBackUpPackage result = new DBBackUpPackage();
            using (var ctx = new SmartWorkingEntities())
            {
              foreach (var entity in ctx.Buildings.AsEnumerable())
              {
            result.BuildingList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Cars.AsEnumerable())
              {
            result.CarList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.ClientBuildings.AsEnumerable())
              {
            result.ClientBuildingList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Clients.AsEnumerable())
              {
            result.ClientList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Contractors.AsEnumerable())
              {
            result.ContractorList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.DeliveryNotes.AsEnumerable())
              {
            result.DeliveryNoteList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Drivers.AsEnumerable())
              {
            result.DriverList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Materials.AsEnumerable())
              {
            result.MaterialList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.MaterialStocks.AsEnumerable())
              {
            result.MaterialStockList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Orders.AsEnumerable())
              {
            result.OrderList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.RecipeComponents.AsEnumerable())
              {
            result.RecipeComponentList.Add(entity.GetPrimitive());
              }

              foreach (var entity in ctx.Recipes.AsEnumerable())
              {
            result.RecipeList.Add(entity.GetPrimitive());
              }
            }
            return result;
              }
              catch (Exception e)
              {
            throw new FaultException<ExceptionDetail>(new ExceptionDetail(e), e.Message);
              }
        }