Referencing namespaces globally?

No, C# doesn't have this concept. Each source file is independent in this respect. (And if the using directives are in a namespace declaration, those are independent from other using directives in peer namespace declarations, too.

That's a pretty rare case though in my experience. ) You don't need ReSharper to change what gets included in a new class though. You can use the Visual Studio templates EDIT: Just to clarify the point about using directives within namespaces, suppose we had (all in one file): using Foo; namespace X { using Bar; // Foo and Bar are searched for code in here, but not Baz } namespace Y { using Baz; // Foo and Baz are searched for code in here, but not Bar } Usually I only have one namespace declaration in a file, and put all the using directives before it.

No, C# doesn't have this concept. Each source file is independent in this respect. (And if the using directives are in a namespace declaration, those are independent from other using directives in peer namespace declarations, too.

That's a pretty rare case though in my experience. ) You don't need ReSharper to change what gets included in a new class though. You can use the Visual Studio templates.

EDIT: Just to clarify the point about using directives within namespaces, suppose we had (all in one file): using Foo; namespace X { using Bar; // Foo and Bar are searched for code in here, but not Baz } namespace Y { using Baz; // Foo and Baz are searched for code in here, but not Bar } Usually I only have one namespace declaration in a file, and put all the using directives before it.

You're amazing. Every time I see (or post) an answer that looks complete and final to me, you come up with something better :) – Philippe Leybaert Jun 4 '09 at 18:37 Thanks Jon. In your 3rd sentence do you mean, if you have namespace declaration inside another namespace (CustomNS), and if you use the CustomNS, those namespaces wouldn't be included for a file that uses that namespace?

– Joan Venge Jun 4 '09 at 18:48 I'll edit my answer to elaborate. – Jon Skeet Jun 4 '09 at 19:15 Thanks Jon. What about adding "using X;" inside namespace Y?

I actually tried but it didn't give me access to what's inside Bar (which is included in X). – Joan Venge Jun 4 '09 at 19:18 No, it wouldn't. A using directive only affects the look-up for source code within that namespace declaration (or the whole file if it's at the top).

It doesn't embed that lookup into the generated code or anything like that. – Jon Skeet Jun 4 '097 at 5:29.

No, this is not possible. If you're using ReSharper, you can set an option to include specific using directives in every new file you create though.

From this SO question and follow-up blog post. You can edit the Visual Studio default templates. To do this, look at the file in this zip : Program FilesVisual Studio\Common7\IDE\ItemTemplates\CSharp\Code\1033\Class.

Zip and modify the Class. Cs file as needed. Additionally, Visual Studio may have cached this file here : Program FilesVisual Studio\Common7\IDE\ItemTemplatesCache\CSharp\Code\1033\Class.zip.

As others have mentioned Visual Studio Templates are the way to go. Note that simply adding a using statement to your template will not ensure that the compiler can resolve your types. So, if you are adding a using statement for MyNamespace in every class you may need to add an assembly reference to your project as well.

See the C# FAQ for more information.

One trick I miss as a newb to CSharp is to look at the "refences" (in VS), to right click and "Add New Reference". This is especially handy when combining mulitple projects where I have made some generic class for reuse elsewhere.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions