/// <summary> /// Creates a Group as a new entry in the DB. /// </summary> /// <param name="group">Group object to add to the DB.</param> /// <returns>ID of the created Group on success, 0 on failure.</returns> public static int CreateNewGroup(Group group) { try { using (SqlConnection connection = ConnectionManager.GetConnection()) { var data = new ActivEarthDataProvidersDataContext(connection); var groupData = new GroupDataProvider { name = group.Name, description = group.Description, owner_id = group.Owner.UserID, green_score = group.GreenScore, badge_score = group.ActivityScore.BadgeScore, challenge_score = group.ActivityScore.ChallengeScore, contest_score = group.ActivityScore.ContestScore, }; data.GroupDataProviders.InsertOnSubmit(groupData); data.SubmitChanges(); foreach (User member in group.Members) { GroupMemberDataProvider memberData = new GroupMemberDataProvider { user_id = member.UserID, group_id = groupData.id }; data.GroupMemberDataProviders.InsertOnSubmit(memberData); } foreach (string tag in group.HashTags) { GroupHashtagDataProvider hashtagData = new GroupHashtagDataProvider { hashtag = tag, group_id = groupData.id }; data.GroupHashtagDataProviders.InsertOnSubmit(hashtagData); } data.SubmitChanges(); data.Connection.Close(); return groupData.id; } } catch (Exception) { return 0; } }
private void detach_GroupDataProviders(GroupDataProvider entity) { this.SendPropertyChanging(); entity.UserDataProvider = null; }
partial void DeleteGroupDataProvider(GroupDataProvider instance);
partial void UpdateGroupDataProvider(GroupDataProvider instance);
partial void InsertGroupDataProvider(GroupDataProvider instance);