Georgii Oleinikov
Georgii Oleinikov

Reputation: 3915

C# using every namespace in the project

In each my .cs file I have tons of "using" lines including other namespaces, like that:

using Game.Models.Main;
using Game.Models.DataStore;
using Game.Manager.MapManager;
using Game.Network.Player;

What if in the beginning of every new .cs file I include "using" statements for all existing namespaces in my code? Are there any downsides of that? Like performance or anything I can't think of?

Why I want that: in Eclipse you can press Ctrl+Space and you'll see the list of definitions starting with the typed characters. In Visual Studio however, you can see that only if the class you're typing is among the "using" namespaces. So when you write a new class you have to type every other class name in full.

Upvotes: 1

Views: 380

Answers (3)

Trisped
Trisped

Reputation: 6003

Normally you only want to include the namespaces you are using. This way you can avoid naming collisions and programmer confusion.

As far as IntelliSense is concerned, if you want something from another name space just start typing in the namespace, IntelliSense will list the namespaces and so you can drill down to what you are looking for.

Upvotes: 1

Alexei Levenkov
Alexei Levenkov

Reputation: 100547

There is not much downside except if you ever have classes with the same name in different namespaces (like Color in System.Drawing.Color and System.Windows.Media.Color) than adding all namespaces can either cause compile errors or complete change of behavior of the code.

Upvotes: 4

Matthew
Matthew

Reputation: 25763

It would probably slow down visual studio's intellisense, but as for a compiled product, it would not affect the resulting binary by having superfluous using statements.

If you want to remove superfluous using statements then you can right-click on the using statements, and go to "refactor" > "sort and remove"

Upvotes: 4

Related Questions