Re: Creating a "public only" constructor

Shawn Wildermuth <[email protected]> Mon, 6 Apr 2009 00:24:40 -0400
Newsgroups gmane.comp.windows.devel.dotnet.advanced
Message-ID <[email protected]>
I don't know your system but perhaps the 'empty' constructor should be a
factory method instead to dissuade users (you could even test that path's
stack to be sure) but that's labor/cycles that you might not want, but if
you really want to be sure.

Thanks,

Shawn Wildermuth
http://wildermuth.com
https://agilitrain.com
Microsoft MVP (C#), MCSD.NET, Author and Speaker

The Silverlight Tour is coming to a city near you! 


-----Original Message-----
From: Discussion of advanced .NET topics.
[mailto:[email protected]] On Behalf Of Dean Cleaver
Sent: Monday, April 06, 2009 12:03 AM
To: [email protected]
Subject: Re: [ADVANCED-DOTNET] Creating a "public only" constructor

The second constructor allows you to create a business services object on a
different connection to the default - so I can specifically create business
services objects connected to 2 different servers from within the same
application. I then want to ensure that if I create an Invoice object on a
given server, than any InvoiceItems it creates are on the same server, which
would be done by using the second constructor. If a developer accidentally
uses the default constructor, it could make a mess of the system.

-----Original Message-----
From: Discussion of advanced .NET topics.
[mailto:[email protected]] On Behalf Of Shawn Wildermuth
Sent: Monday, 06 April 2009 15:55
To: [email protected]
Subject: Re: [ADVANCED-DOTNET] Creating a "public only" constructor

I don't think you can.  Can you explain why you want to protect it from
internal classes?

Thanks,

Shawn Wildermuth
http://wildermuth.com
https://agilitrain.com
Microsoft MVP (C#), MCSD.NET, Author and Speaker

The Silverlight Tour is coming to a city near you! 


-----Original Message-----
From: Discussion of advanced .NET topics.
[mailto:[email protected]] On Behalf Of Dean Cleaver
Sent: Sunday, April 05, 2009 11:42 PM
To: [email protected]
Subject: [ADVANCED-DOTNET] Creating a "public only" constructor

Hey, anyone know if you can do this with attributes or something? I want to
have 2 public constructors:

public ClassName()
{
}

public ClassName(some param)
{
}

I want both publically accessible, but I want the default one *inaccessible*
internally. Can that be done?

Dino

===================================
View archives and manage your subscription(s) at
http://peach.ease.lsoft.com/archives

===================================
View archives and manage your subscription(s) at
http://peach.ease.lsoft.com/archives

===================================
View archives and manage your subscription(s) at
http://peach.ease.lsoft.com/archives

===================================
View archives and manage your subscription(s) at http://peach.ease.lsoft.com/archives