Exemple #1
0
        private void SaveGameEvents(Allegiance.CommunitySecuritySystem.DataAccess.CSSDataContext db, DataAccess.CSSStatsDataContext statsDB, Allegiance.CommunitySecuritySystem.Server.Data.GameDataset.GameRow gameRow, int gameIdentID)
        {
            foreach (Data.GameDataset.GameEventRow gameEventRow in gameRow.GetGameEventRows())
            {
                int performerLoginID = 0;
                int targetLoginID    = 0;

                try
                {
                    var performerAlias = DataAccess.Alias.GetAliasByCallsign(db, gameEventRow.PerformerName);

                    if (performerAlias != null)
                    {
                        performerLoginID = performerAlias.Login.Id;
                    }

                    var targetAlias = DataAccess.Alias.GetAliasByCallsign(db, gameEventRow.TargetName);

                    if (targetAlias != null)
                    {
                        targetLoginID = targetAlias.Login.Id;
                    }

                    DataAccess.GameEvent gameEvent = new DataAccess.GameEvent()
                    {
                        GameEventTime             = gameEventRow.EventTime,
                        GameID                    = gameIdentID,
                        GameEventIndirectID       = gameEventRow.IndirectID,
                        GameEventIndirectName     = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName), 254),
                        GameEventPerformerID      = gameEventRow.PerformerID,
                        GameEventPerformerName    = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName), 254),
                        GameEventPerformerLoginID = performerLoginID,
                        GameEventTargetID         = gameEventRow.TargetID,
                        GameEventTargetName       = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName), 254),
                        GameEventTargetLoginID    = targetLoginID,
                        EventID                   = gameEventRow.EventID
                    };

                    statsDB.GameEvents.InsertOnSubmit(gameEvent);

                    statsDB.SubmitChanges();
                }
                catch (Exception ex)
                {
                    string errorDetails = String.Format(@"SaveGameEvents(): Insert error! 
		gameIdentID = {0},
		gameEventRow.EventID = {1},
		gameEventRow.EventTime = {2},
		gameEventRow.GameID = {3},
		gameEventRow.IndirectID = {4},
		gameEventRow.IndirectName = {5},
		gameEventRow.PerformerID = {6},
		gameEventRow.PerformerName = {7},
		gameEventRow.TargetID = {8},
		gameEventRow.TargetName = {9},
		performerLoginID = {10},
		targetLoginID = {11},
		DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName) = {12},
		DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName) = {13},
		DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName) = {14}
		===================================================
{15}
",
                                                        gameIdentID,
                                                        gameEventRow.EventID,
                                                        gameEventRow.EventTime,
                                                        gameEventRow.GameID,
                                                        gameEventRow.IndirectID,
                                                        gameEventRow.IndirectName,
                                                        gameEventRow.PerformerID,
                                                        gameEventRow.PerformerName,
                                                        gameEventRow.TargetID,
                                                        gameEventRow.TargetName,
                                                        performerLoginID,
                                                        targetLoginID,
                                                        DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName),
                                                        DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName),
                                                        DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName),
                                                        ex.ToString());

                    if (String.IsNullOrEmpty(Settings.Default.TagExceptionLogFileName) == false)
                    {
                        File.AppendAllText(Settings.Default.TagExceptionLogFileName, DateTime.Now.ToString() + ": " + errorDetails + "\n\n\n");
                    }
                }
            }
        }
        private void SaveGameEvents(Allegiance.CommunitySecuritySystem.DataAccess.CSSDataContext db, DataAccess.CSSStatsDataContext statsDB, Allegiance.CommunitySecuritySystem.Server.Data.GameDataset.GameRow gameRow, int gameIdentID)
        {
            foreach (Data.GameDataset.GameEventRow gameEventRow in gameRow.GetGameEventRows())
            {
                int performerLoginID = 0;
                int targetLoginID = 0;

                try
                {
                    var performerAlias = DataAccess.Alias.GetAliasByCallsign(db, gameEventRow.PerformerName);

                    if (performerAlias != null)
                        performerLoginID = performerAlias.Login.Id;

                    var targetAlias = DataAccess.Alias.GetAliasByCallsign(db, gameEventRow.TargetName);

                    if (targetAlias != null)
                        targetLoginID = targetAlias.Login.Id;

                    DataAccess.GameEvent gameEvent = new DataAccess.GameEvent()
                    {
                        GameEventTime = gameEventRow.EventTime,
                        GameID = gameIdentID,
                        GameEventIndirectID = gameEventRow.IndirectID,
                        GameEventIndirectName = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName), 254),
                        GameEventPerformerID = gameEventRow.PerformerID,
                        GameEventPerformerName = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName), 254),
                        GameEventPerformerLoginID = performerLoginID,
                        GameEventTargetID = gameEventRow.TargetID,
                        GameEventTargetName = TrimString(DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName), 254),
                        GameEventTargetLoginID = targetLoginID,
                        EventID = gameEventRow.EventID
                    };

                    statsDB.GameEvents.InsertOnSubmit(gameEvent);

                    statsDB.SubmitChanges();
                }
                catch(Exception ex)
                {

                    string errorDetails = String.Format(@"SaveGameEvents(): Insert error!
            gameIdentID = {0},
            gameEventRow.EventID = {1},
            gameEventRow.EventTime = {2},
            gameEventRow.GameID = {3},
            gameEventRow.IndirectID = {4},
            gameEventRow.IndirectName = {5},
            gameEventRow.PerformerID = {6},
            gameEventRow.PerformerName = {7},
            gameEventRow.TargetID = {8},
            gameEventRow.TargetName = {9},
            performerLoginID = {10},
            targetLoginID = {11},
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName) = {12},
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName) = {13},
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName) = {14}
            ===================================================
            {15}
            ",
            gameIdentID,
            gameEventRow.EventID,
            gameEventRow.EventTime,
            gameEventRow.GameID,
            gameEventRow.IndirectID,
            gameEventRow.IndirectName,
            gameEventRow.PerformerID,
            gameEventRow.PerformerName,
            gameEventRow.TargetID,
            gameEventRow.TargetName,
            performerLoginID,
            targetLoginID,
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.IndirectName),
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.PerformerName),
            DataAccess.Alias.GetCallsignFromStringWithTokensAndTags(db, gameEventRow.TargetName),
            ex.ToString());

                    if (String.IsNullOrEmpty(Settings.Default.TagExceptionLogFileName) == false)
                        File.AppendAllText(Settings.Default.TagExceptionLogFileName, DateTime.Now.ToString() + ": " + errorDetails + "\n\n\n");

                }
            }
        }