Exemple #1
0
        //public IEnumerable<PNDS_AUT_PARA> GetAll_PNDS_AUT_PARA(PNDSEntities dc)
        //{
        //    List<String> geraete = new List<String>()
        //                        { "K", //AKI
        //                            "T" //PATX
        //                        };

        //    var found = from d in dc.PNDS_AUT_PARA
        //                where geraete.Contains(d.Geraeteart)
        //                orderby d.Automatennr ascending
        //                select d;
        //    if (found.Any())
        //    {
        //        return found;
        //    }

        //    return null;
        //}

        #region EntityChar


        #endregion

        #region Physics

        public static bool insertEntity(IDAL_DCTX ctx, Entity po)
        {
            try
            {
                var result = (ctx.Context as dbDataEntities).Entity.Where(x => x.EntID == po.EntID);
                if (result.Any())
                {
                    result.First().Data = po.Data;
                }
                else
                {
                    (ctx.Context as dbDataEntities).Entity.Add(po);
                }

                (ctx.Context as dbDataEntities).SaveChanges();

                //      MessageBox.Show("Entity (" + po.EntID + ") saved to DB");


                return(true);
            }catch (Exception ex)
            {
                MessageBox.Show(ex.InnerException != null ? ex.InnerException.Message : ex.Message);
            }

            return(false);
        }
Exemple #2
0
        public static bool insertScene(IDAL_DCTX ctx, VEX.IDAL.MDB.Scene scene)
        {
            try
            {
                var ctxtmp = (ctx.Context as dbDataEntities);
                var result = ctxtmp.Scene.Where(x => x.SceneID == scene.SceneID);
                if (result.Any())
                {
                    var dbScene = result.First();
                    dbScene.Name = scene.Name;
                    dbScene.Data = scene.Data;
                }
                else
                {
                    (ctx.Context as dbDataEntities).Scene.Add(scene);
                }

                (ctx.Context as dbDataEntities).SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
            }

            return(false);
        }
Exemple #3
0
        private void RekursivSaveToDB(IItem item, IDAL_DCTX ctx)
        {
            if (item.Items.Count > 0)
            {
                foreach (var subItem in item.Items)
                {
                    if (subItem is IDBFileItem)// && subItem is INetID)
                    {
                        var netObj = subItem as IDBFileItem;
                        netObj.SaveToDB(ctx);
                    }

                    if (subItem.Items.Count > 0)
                    {
                        RekursivSaveToDB(subItem, ctx); // rekursiv
                    }
                }
            }
            else
            {
                if (item is IDBFileItem)// && item is INetID)
                {
                    var netObj = item as IDBFileItem;
                    netObj.SaveToDB(ctx);
                }
            }
        }
Exemple #4
0
        public static IEnumerable <EntityContainer> selectAllEntities(IDAL_DCTX ctx)
        {
            try
            {
                var result = from n in (ctx.Context as dbDataEntities).Entity

                             join oj in (ctx.Context as dbDataEntities).EntityData on n.EntDID equals oj.EntDID into gjo
                             from Ent in gjo.DefaultIfEmpty()

                             //where n.SceneID == sceneID
                             //select

                             //   where n.SceneID == sceneID
                             select new EntityContainer {
                    Entity = n, EntityData = Ent
                };

                if (result.Any())
                {
                    return(result);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("selectAllEntities. " + ex.Message);
            }

            return(null);
        }
Exemple #5
0
        public static VEX.IDAL.MDB.Scene selectSceneDataOnly(IDAL_DCTX ctx, int id)
        {
            try
            {
                var result = from n in (ctx.Context as dbDataEntities).Scene
                             where n.SceneID == id
                             select n;

                //  var result = m(ctx.Context as dbDataEntities).Scene.Where(x => x.SceneID == id);
                if (result.Any())
                {
                    return(result.First());//.Data;
                }
                else
                {
                    return(new VEX.IDAL.MDB.Scene());
                }
            }
            catch (Exception ex)
            {
                //     MessageBox.Show("dreck_" + id + "_!!!!");
            }

            return(null);
        }
Exemple #6
0
 public static bool insertSceneNode(IDAL_DCTX ctx, SceneNode sceneNode)
 {
     try
     {
         var result = (ctx.Context as dbDataEntities).SceneNode.Where(x => x.NodeID == sceneNode.NodeID &&
                                                                      x.SceneID == sceneNode.SceneID);
         if (result.Any())
         {
             var scenNode = result.First();
             scenNode.Data    = sceneNode.Data;
             scenNode.SceneID = sceneNode.SceneID;
             scenNode.EntID   = sceneNode.EntID;
             scenNode.Name    = sceneNode.Name;
             (ctx.Context as dbDataEntities).SaveChanges();
             return(true);
         }
         else
         {
             (ctx.Context as dbDataEntities).SceneNode.Add(sceneNode);
             (ctx.Context as dbDataEntities).SaveChanges();
             return(true);
         }
     }catch (Exception ex)
     {
     }
     return(false);
 }
Exemple #7
0
        public static IEnumerable <SceneNodeContainer> selectSceneNodes(IDAL_DCTX ctx, int sceneID)
        {
            try
            {
                var result = from n in (ctx.Context as dbDataEntities).SceneNode

                             join oj in (ctx.Context as dbDataEntities).Entity on n.EntID equals oj.EntID into gjo
                             from Ent in gjo.DefaultIfEmpty()

                             //where n.SceneID == sceneID
                             //select

                             where n.SceneID == sceneID
                             select new SceneNodeContainer {
                    Node = n, Entity = Ent
                };

                //  var result = m(ctx.Context as dbDataEntities).Scene.Where(x => x.SceneID == id);
                if (result.Any())
                {
                    return(result);//.Data;
                }
            }
            catch (Exception ex)
            {
                //     MessageBox.Show("dreck_" + id + "_!!!!");
            }

            return(null);
        }
Exemple #8
0
        public bool SaveToDB(IDAL_DCTX ctx)
        {
            foreach (var item in Items)
            {
                var dbFileItem = item as IDBFileItem;
                if (dbFileItem != null)
                {
                    return(dbFileItem.SaveToDB(ctx));
                }
            }

            return(true);
        }
Exemple #9
0
        public bool SaveToDB(IDAL_DCTX ctx)
        {
            string DBPath = DBFileUtil.GetDBFilePath(this.Parent);

            if (!String.IsNullOrEmpty(DBPath))
            {
                IDAL.MDB.Scene dbSceneData = new IDAL.MDB.Scene();
                dbSceneData.Data    = FBObject.CreateFBData()._fbData;
                dbSceneData.SceneID = SceneID;
                dbSceneData.Name    = this.Name;

                IDAL.IDAL.insertScene(ctx, dbSceneData);

                uint nodeCount = 0;

                foreach (var sceneitem in Entities)
                {
                    var entity = sceneitem as EntityX;
                    if (entity != null)
                    {
                        //  entity.SaveToDB(ctx);

                        var m_SceneNodeDB = new IDAL.MDB.SceneNode();

                        var body = entity.GetComponentX <BodyComponent>() as BodyComponent;
                        if (body != null)
                        {
                            //if (body.SceneNodeID <= 0)
                            //    MessageBox.Show("SceneNodeID <= 0!");
                            //else {
                            m_SceneNodeDB.Data = body.FBObject.CreateFBData()._fbData;

                            m_SceneNodeDB.Name    = Name;
                            m_SceneNodeDB.SceneID = SceneID;
                            m_SceneNodeDB.NodeID  = nodeCount = nodeCount + 1;
                            m_SceneNodeDB.EntID   = entity.EntityID;

                            //save sceneNode to db
                            if (m_SceneNodeDB.NodeID > 0)
                            {
                                IDAL.IDAL.insertSceneNode(ctx, m_SceneNodeDB);
                            }
                            //    }
                        }
                    }
                }
            }
            return(true);
        }
Exemple #10
0
        //public bool insertSceneNode(SceneNode sceneNode)
        //{
        //    m(ctx.Context as dbDataEntities).SceneNode.Add(sceneNode);
        //    m(ctx.Context as dbDataEntities).SaveChanges();
        //    return true;
        //}

        public static bool DeleteSceneNode(IDAL_DCTX ctx, Int32 id)
        {
            try
            {
                // Scene tmp = new Scene() { Data = data };
                (ctx.Context as dbDataEntities).SceneNode.Remove((ctx.Context as dbDataEntities).SceneNode.Where(x => x.NodeID == id).First());
                (ctx.Context as dbDataEntities).SaveChanges();
                // id = (int)tmp.SceneID;
                return(true);
            }catch (Exception ex)
            {
                MessageBox.Show("error in DeleteSceneNode '" + id + "' " + ex.Message);
            }
            return(false);
        }
Exemple #11
0
        public bool SaveToDB(IDAL_DCTX ctx)
        {
            string DBPath = DBFileUtil.GetDBFilePath(this.Parent);

            if (!String.IsNullOrEmpty(DBPath))
            {
                foreach (var item in Items)
                {
                    var entity = item as EntityX;
                    if (entity != null)
                    {
                        entity.SaveToDB(ctx);
                    }
                }
            }
            return(true);
        }
Exemple #12
0
 public static bool DeleteScene(IDAL_DCTX ctx, Int32 id)
 {
     try
     {
         // Scene tmp = new Scene() { Data = data };
         (ctx.Context as dbDataEntities).Scene.Remove((ctx.Context as dbDataEntities).Scene.Where(x => x.SceneID == id).First());
         (ctx.Context as dbDataEntities).SaveChanges();
         // id = (int)tmp.SceneID;
         return(true);
     }
     catch (Exception ex)
     {
         //  m_loggerService.Log("error IDAL.DeleteScene(id=" + id + ")" + (ex.InnerException != null ? ex.InnerException.Message : ex.Message), LogCategory.Exception, LogPriority.High);
         //     MessageBox.Show("dreck_" + id + "_!!!!");
     }
     return(false);
 }
Exemple #13
0
        public static bool deleteEntity(IDAL_DCTX ctx, Entity po)
        {
            try
            {
                var result = (ctx.Context as dbDataEntities).Entity.Where(x => x.EntID == po.EntID);
                if (result.Any())
                {
                    (ctx.Context as dbDataEntities).Entity.Remove(result.First());
                    (ctx.Context as dbDataEntities).SaveChanges();
                    return(true);
                }
            }
            catch (Exception ex)
            {
            }

            return(false);
        }
Exemple #14
0
        public static bool TruncateDatabase(IDAL_DCTX ctx)
        {
            try
            {
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [SceneNode]; VACUUM;");
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [Entity]; VACUUM;");
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [EntityData];  VACUUM;");
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [State];VACUUM;");
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [UI];VACUUM;");
                (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM [Scene]; VACUUM;");
                //    (ctx.Context as dbDataEntities).Database.ExecuteSqlCommand("DELETE FROM \"sqlite_sequence\"; VACUUM;");
            }
            catch (Exception ex)
            {
            }

            return(false);
        }
Exemple #15
0
        public static EntityData selectEntityData(IDAL_DCTX ctx, int id)
        {
            try
            {
                var result = (ctx.Context as dbDataEntities).EntityData.Where(x => x.EntDID == id);
                if (result.Any())
                {
                    return(result.First());
                }
                else
                {
                    return(new EntityData());
                }
            }
            catch (Exception ex)
            {
                //     MessageBox.Show("dreck_" + id + "_!!!!");
            }

            return(new EntityData());
        }
Exemple #16
0
        public static IEnumerable <EntityData> selectAllEntityData(IDAL_DCTX ctx)
        {
            try
            {
                var result = (ctx.Context as dbDataEntities).EntityData;
                if (result.Any())
                {
                    return(result);
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                //     MessageBox.Show("dreck_" + id + "_!!!!");
            }

            return(null);
        }
Exemple #17
0
        public static bool insertEntityData(IDAL_DCTX ctx, EntityData entityData)
        {
            try
            {
                var result = (ctx.Context as dbDataEntities).EntityData.Where(x => x.EntDID == entityData.EntDID);
                if (result.Any())
                {
                    result.First().Data = entityData.Data;
                }
                else
                {
                    (ctx.Context as dbDataEntities).EntityData.Add(entityData);
                }

                (ctx.Context as dbDataEntities).SaveChanges();
                return(true);
            }
            catch (Exception ex)
            {
            }

            return(false);
        }
Exemple #18
0
        //public IEnumerable<SceneContainer> selectCompleteScene(int id)
        //{
        //    try
        //    {
        //        var result = from n in m(ctx.Context as dbDataEntities).Scene

        //                     join nj in m(ctx.Context as dbDataEntities).SceneNodes on n.SceneID equals nj.SceneID into gj
        //                     from node in gj.DefaultIfEmpty()

        //                     join oj in m(ctx.Context as dbDataEntities).Entity on node.EntID equals oj.EntID into gjo
        //                     from Ent in gjo.DefaultIfEmpty()

        //                     where n.SceneID == id
        //                     select new SceneContainer { Scene = n, Nodes = node, Entity = Ent };

        //        //  var result = m(ctx.Context as dbDataEntities).Scene.Where(x => x.SceneID == id);
        //        if (result.Any())
        //        {
        //            return result;//.Data;
        //        }
        //    }
        //    catch (Exception ex)
        //    {
        //        //     MessageBox.Show("dreck_" + id + "_!!!!");
        //    }

        //    return null;
        //}

        public static IEnumerable <VEX.IDAL.MDB.Scene> selectAllScenesDataOnly(IDAL_DCTX ctx)
        {
            try
            {
                var result = from n in (ctx.Context as dbDataEntities).Scene
                             select n;

                //  var result = m(ctx.Context as dbDataEntities).Scene.Where(x => x.SceneID == id);
                if (result.Any())
                {
                    return(result);//.Data;
                }
                else
                {
                    return(null);
                }
            }
            catch (Exception ex)
            {
                //     MessageBox.Show("dreck_" + id + "_!!!!");
            }

            return(null);
        }
Exemple #19
0
        public IDAL_DCTX GetDataContextOpt(Boolean checkUser = true)
        {
            IDAL_DCTX ctx = new IDAL_DCTX();

            try
            {
                var _databaseService = VEFModule.UnityContainer.Resolve(typeof(IDatabaseService), "") as IDatabaseService;

                ////if (m_DBFound)
                ////{

                ////}
                ////else
                ////    ShowDBSetting(m_Container);

                //   PS_COMID_DataContext crmDataContext = new PS_COMID_DataContext();

                IDALOptions options = _databaseService.CurrentDB.DBOptions;
                if (options.DBType == DBType.MSSQL)
                {
                    //

                    //string connectionString = "metadata=res://*/MDB.MDB_PNDS.csdl|res://*/MDB.MDB_PNDS.ssdl|res://*/MDB.MDB_PNDS.msl;Server = " + options.Host + "; Database = PNDS; User Id = " + options.User + ";Password = "******"metadata=res://*/MDB.MDB_PNDS.csdl|res://*/MDB.MDB_PNDS.ssdl|res://*/MDB.MDB_PNDS.msl;provider=System.Data.SqlClient;provider connection string=\"data source=AP-HAAG\\SQLEX2008R203;initial catalog=PNDS;user id=PecuSoft;password=sesam1997oeffne;MultipleActiveResultSets=True;App=EntityFramework\"";
                    string connectionString = "metadata=res://*/MDB.MDB_PNDS.csdl|res://*/MDB.MDB_PNDS.ssdl|res://*/MDB.MDB_PNDS.msl;provider=System.Data.SqlClient;provider connection string=\"data source=" + options.Host + ";initial catalog=PNDS;user id=" + options.User + ";password="******";MultipleActiveResultSets=True;App=EntityFramework\"";

                    //string connectionString = "User Id=" + options.User + ";Password="******";Server=" + options.Host + ";Direct=True;Sid=" + options.ServiceName + ";Persist Security Info=True";
                    //   string providerPrefix = "";
                    //if (!ConnectionDialog.Show(out connectionString, out providerPrefix))
                    //{
                    //    stripLabel.Text = "Incorrect connection string";
                    //    return;
                    //}

                    //Frame activating
                    //  Stream contextStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(String.Format("ComID.IDAL.MDB.CrmDataMapping{0}.lqml", providerPrefix));
                    //   Devart.Data.Linq.Mapping.MappingSource mappingSource = Devart.Data.Linq.Mapping.XmlMappingSource.FromStream(contextStream);

                    //PNDSEntities crmDataContext = new PNDSEntities(m_Container, connectionString);//, mappingSource);

                    //crmDataContext.CTXID = _databaseService.GetNextCtxID();

                    ////    crmDataContext.Connection.StateChange += new System.Data.StateChangeEventHandler(Connection_StateChange);

                    //crmDataContext.Database.Connection.Open();
                    ////    foreach (ListViewItem lvItem in lvFrames.Items)
                    ////        ((BaseControl)lvItem.Tag).OpenClick();

                    //if (checkUser && _databaseService.LoggedUser.UserID < 1)
                    //{
                    //    ShowLoginDialog(m_Container);
                    //    return null;
                    //}

                    //return crmDataContext;
                }
                else if (options.DBType == DBType.SQLite)
                {
                    //System.Data.SQLite.SQLiteConnection.CreateFile("databaseFile.db3");        // Create the file which will be hosting our database
                    //using (System.Data.SQLite.SQLiteConnection con = new System.Data.SQLite.SQLiteConnection("data source=\"F:\\Projekte\\coop\\XGame\\data\\dbData.s3db\""))
                    //{
                    //    using (System.Data.SQLite.SQLiteCommand com = new System.Data.SQLite.SQLiteCommand(con))
                    //    {
                    //        con.Open();                             // Open the connection to the database

                    //        //com.CommandText = createTableQuery;     // Set CommandText to our query that will create the table
                    //        //com.ExecuteNonQuery();                  // Execute the query

                    //        //com.CommandText = "INSERT INTO MyTable (Key,Value) Values ('key one','value one')";     // Add the first entry into our database
                    //        //com.ExecuteNonQuery();      // Execute the query
                    //        //com.CommandText = "INSERT INTO MyTable (Key,Value) Values ('key two','value value')";   // Add another entry into our database
                    //        //com.ExecuteNonQuery();      // Execute the query

                    //        //com.CommandText = "Select * FROM MyTable";      // Select all rows from our database table

                    //        //using (System.Data.SQLite.SQLiteDataReader reader = com.ExecuteReader())
                    //        //{
                    //        //    while (reader.Read())
                    //        //    {
                    //        //        Console.WriteLine(reader["Key"] + " : " + reader["Value"]);     // Display the value of the key and value column for every row
                    //        //    }
                    //        //}
                    //        con.Close();        // Close the connection to the database
                    //    }
                    //}

                    //todo per settings!
                    //       string connectionString = "metadata=res://*/MDB.EDM_DBData.csdl|res://*/MDB.EDM_DBData.ssdl|res://*/MDB.EDM_DBData.msl;provider=System.Data.SQLite.EF6;provider connection string=\"data source=F:\\Projekte\\coop\\XGame\\data\\dbData.s3db\"";

                    //   string connectionString = "data source=F:\\Projekte\\coop\\XGame\\data\\dbData.s3db";
                    string connectionString = _databaseService.CurrentDB.DBOptions.Host;
                    //  string connectionString = "metadata=res://*/MDB.EDM_DBData.csdl|res://*/MDB.EDM_DBData.ssdl|res://*/MDB.EDM_DBData.msl;provider=System.Data.SQLite.EF6;provider connection string=\"data source=" + options.Host + "\""; //D:\\Projekte\\coop\\VEX\\Test\\dbData.s3db\"";

                    //  string connectionString = "metadata=res://*/MDB.MDB_PNDS.csdl|res://*/MDB.MDB_PNDS.ssdl|res://*/MDB.MDB_PNDS.msl;provider=System.Data.SqlClient;provider connection string=\"data source=" + options.Host + ";initial catalog=PNDS;user id=" + options.User + ";password="******";MultipleActiveResultSets=True;App=EntityFramework\"";
                    dbDataEntities crmDataContext = new dbDataEntities(connectionString);//, mappingSource);

                    crmDataContext.CTXID = _databaseService.GetNextCtxID();

                    //    crmDataContext.Connection.StateChange += new System.Data.StateChangeEventHandler(Connection_StateChange);

                    //-------------   crmDataContext..Database..Connection.Open();
                    //    foreach (ListViewItem lvItem in lvFrames.Items)
                    //        ((BaseControl)lvItem.Tag).OpenClick();

                    if (checkUser && _databaseService.LoggedUser.UserID < 1)
                    {
                        ShowLoginDialog();
                        return(null);
                    }
                    ctx.Context = crmDataContext;

                    return(ctx);
                }
                else if (options.DBType == DBType.Oracle)
                {
                    //string connectionString = "User Id=" + options.User + ";Password="******";Server=" + options.Host + ";Direct=True;Sid=" + options.ServiceName + ";Persist Security Info=True";
                    ////   string providerPrefix = "";
                    ////if (!ConnectionDialog.Show(out connectionString, out providerPrefix))
                    ////{
                    ////    stripLabel.Text = "Incorrect connection string";
                    ////    return;
                    ////}

                    ////Frame activating
                    ////  Stream contextStream = Assembly.GetExecutingAssembly().GetManifestResourceStream(String.Format("ComID.IDAL.MDB.CrmDataMapping{0}.lqml", providerPrefix));
                    ////   Devart.Data.Linq.Mapping.MappingSource mappingSource = Devart.Data.Linq.Mapping.XmlMappingSource.FromStream(contextStream);

                    //PNDSEntities crmDataContext = new PNDSEntities(m_Container, connectionString);//, mappingSource);

                    //crmDataContext.CTXID = _databaseService.GetNextCtxID();

                    ////    crmDataContext.Connection.StateChange += new System.Data.StateChangeEventHandler(Connection_StateChange);

                    //crmDataContext.Database.Connection.Open();
                    ////    foreach (ListViewItem lvItem in lvFrames.Items)
                    ////        ((BaseControl)lvItem.Tag).OpenClick();

                    //if (checkUser && _databaseService.LoggedUser.UserID < 1)
                    //{
                    //    ShowLoginDialog(m_Container);
                    //    return null;
                    //}

                    //return crmDataContext;
                }
            }
            catch (Exception ex)
            {
                var loggerService = VEFModule.UnityContainer.Resolve(typeof(ILoggerService), "") as ILoggerService;
                loggerService.Log("Datenbankverbindung fehlgeschlagen." + (ex.InnerException != null ? ex.InnerException.Message : ex.Message), LogCategory.Exception, LogPriority.High);
                //
                //  workspace.NotificationRequest.Raise(new Notification { Content = "Datenbankverbindung fehlgeschlagen." + (ex.InnerException != null ? ex.InnerException.Message : ex.Message), Title = "Fehler" });

                //  stripLabel.Text = ex.Message;
            }
            return(ctx);
        }