Пример #1
0
        // For Deleting User SubTopic Calling from above
        static void DeleteUserSubTopic(EditorsEntities entity, int SubTopicId, int UserId)
        {
            // First, delete UserCitations for this SubTopic
            var UserCitationsToBeDeleted = entity.UserCitations.Where(u => u.SubTopicID == SubTopicId && u.UserID == UserId).ToList();

            foreach (UserCitation UC in UserCitationsToBeDeleted)
            {
                entity.UserCitations.Remove(UC);
            }

            // Deleted UserCitations by above statement

            // Second, delete searches for this SubTopic

            entity.lib_DeleteSearchesFromSubTopic(SubTopicId, UserId);   // Executing lib_DeleteSearchesFromSubTopic Stored Procedure.

            // Delete searches for this SubTopic by above stored procedure

            // Third, delete this SubTopic from subtopics and userhas sponsersubtopic
            var UserSubTopicToBeDeleted = entity.SubTopics.Where(s => s.SubTopicID == SubTopicId && s.UserID == UserId && s.Type == 2).FirstOrDefault();

            if (UserSubTopicToBeDeleted != null)
            {
                entity.SubTopics.Remove(UserSubTopicToBeDeleted);
            }

            var UserSponsorFolderToBeDeleted = entity.UserHasSponsorFolders.Where(s => s.UserFolderId == SubTopicId && s.UserId == UserId).FirstOrDefault();

            if (UserSponsorFolderToBeDeleted != null)
            {
                entity.UserHasSponsorFolders.Remove(UserSponsorFolderToBeDeleted);
            }
            entity.SaveChanges();
        }