Click here to Skip to main content
15,901,373 members
Home / Discussions / C#
   

C#

 
GeneralRe: How to return an environment variable? Pin
Dr.Walt Fair, PE3-Dec-10 19:52
professionalDr.Walt Fair, PE3-Dec-10 19:52 
QuestionPrevent class member circular initialization? Pin
frattaro3-Dec-10 5:01
frattaro3-Dec-10 5:01 
AnswerRe: Prevent class member circular initialization? Pin
_Erik_3-Dec-10 5:22
_Erik_3-Dec-10 5:22 
AnswerRe: Prevent class member circular initialization? PinPopular
Luc Pattyn3-Dec-10 5:22
sitebuilderLuc Pattyn3-Dec-10 5:22 
GeneralRe: Prevent class member circular initialization? Pin
Dalek Dave3-Dec-10 5:33
professionalDalek Dave3-Dec-10 5:33 
GeneralRe: Prevent class member circular initialization? Pin
frattaro3-Dec-10 5:58
frattaro3-Dec-10 5:58 
GeneralRe: Prevent class member circular initialization? Pin
Luc Pattyn3-Dec-10 7:04
sitebuilderLuc Pattyn3-Dec-10 7:04 
AnswerRe: Prevent class member circular initialization? Pin
PIEBALDconsult4-Dec-10 10:00
mvePIEBALDconsult4-Dec-10 10:00 
In my opinion, a class shouldn't know anything about how, where, or whether it is stored anywhere -- that is not within its area of responsibility. Basically, a User may have a collection of Groups and a Group may have a collection of Users, but neither should be in charge of "getting" those collections. Some other class is responsible for knowing about the database and the relationship and reading and populating the collections.

Here's a little something I just worked up to show how I might do it -- though I probably wouldn't Big Grin | :-D :

public sealed class UserGroupManager
{
    public UserGroupManager
    (
        Test DataContext
    )
    {
        this.Users = new System.Collections.Generic.HashSet<Test.User>() ;

        this.Groups = new System.Collections.Generic.HashSet<Test.Group>() ;

        foreach
        (
            Test.User user
        in
            DataContext.Users
        )
        {
            foreach
            (
               Test.Group group
            in
                DataContext.ExecuteQuery<Test.Group>
                (
                    @"SELECT [Group].* FROM UserGroup INNER JOIN [Group] ON UserGroup.GroupID=[Group].ID WHERE UserGroup.UserID=?"
                ,
                    user.ID
                )
            )
            {
                group.Users.Add ( user ) ;
                user.Groups.Add ( group ) ;

                this.Groups.Add ( group ) ;
            }

            this.Users.Add ( user ) ;
        }

        return ;
    }

    public readonly System.Collections.Generic.HashSet<Test.User> Users ;

    public readonly System.Collections.Generic.HashSet<Test.Group> Groups ;
}


(I've only been fiddling with Linq-to-SQL Dead | X| for the last few days.)
QuestionDotNet ThreadPool not meant for long running jobs? Pin
devvvy2-Dec-10 23:51
devvvy2-Dec-10 23:51 
AnswerRe: DotNet ThreadPool not meant for long running jobs? PinPopular
Eddy Vluggen3-Dec-10 0:16
professionalEddy Vluggen3-Dec-10 0:16 
GeneralRe: DotNet ThreadPool not meant for long running jobs? Pin
Dalek Dave3-Dec-10 3:18
professionalDalek Dave3-Dec-10 3:18 
GeneralRe: DotNet ThreadPool not meant for long running jobs? Pin
Eddy Vluggen3-Dec-10 6:48
professionalEddy Vluggen3-Dec-10 6:48 
AnswerRe: DotNet ThreadPool not meant for long running jobs? Pin
Keith Barrow3-Dec-10 0:21
professionalKeith Barrow3-Dec-10 0:21 
GeneralRe: DotNet ThreadPool not meant for long running jobs? Pin
devvvy3-Dec-10 15:20
devvvy3-Dec-10 15:20 
GeneralRe: DotNet ThreadPool not meant for long running jobs? [modified] Pin
Keith Barrow3-Dec-10 21:46
professionalKeith Barrow3-Dec-10 21:46 
GeneralThank you guys Pin
devvvy4-Dec-10 13:54
devvvy4-Dec-10 13:54 
AnswerRe: DotNet ThreadPool not meant for long running jobs? Pin
#realJSOP3-Dec-10 4:06
professional#realJSOP3-Dec-10 4:06 
AnswerRe: DotNet ThreadPool not meant for long running jobs? [modified] Pin
Luc Pattyn3-Dec-10 17:05
sitebuilderLuc Pattyn3-Dec-10 17:05 
AnswerRe: DotNet ThreadPool not meant for long running jobs? Pin
Pete O'Hanlon3-Dec-10 20:56
mvePete O'Hanlon3-Dec-10 20:56 
QuestionCorordinate problem when load the image in picture box in zoom mode Pin
Nivas822-Dec-10 22:10
Nivas822-Dec-10 22:10 
AnswerRe: Corordinate problem when load the image in picture box in zoom mode Pin
Luc Pattyn3-Dec-10 0:51
sitebuilderLuc Pattyn3-Dec-10 0:51 
QuestionNeeded to Create a Scrolling Ticker with LinkLabel Functionality Pin
honeyashu2-Dec-10 20:04
honeyashu2-Dec-10 20:04 
AnswerRe: Needed to Create a Scrolling Ticker with LinkLabel Functionality Pin
Jacob D Dixon4-Dec-10 3:23
Jacob D Dixon4-Dec-10 3:23 
QuestionListView in C#.net Pin
mathy2-Dec-10 19:52
mathy2-Dec-10 19:52 
AnswerRe: ListView in C#.net Pin
Hiren solanki2-Dec-10 19:54
Hiren solanki2-Dec-10 19:54 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.