2016-01-13 63 views
2

下午好!如何添加一個較短的別名到另一個項目使用的名稱空間?

我在用下面的命名空間結構的Visual Studio解決方案兩個C#項目(反映目錄佈局):

MySolution 
|-- MyLibrary 
| |-- App_Code 
| | |-- Entities 
| | | `-- ... 
| | `-- ... 
| `-- MainClass.cs 
`-- MyApplication 
    |-- App_Code 
    | `-- ... 
    `-- Main.cs 

所有MyApplication的項目,我想從使用幾類實體命名空間在MyLibrary項目,而不必每次都指定其全名:

... 
// using MyLibrary.App_Code.Entities; // too long and ugly 
using MyLibrary.Entities; // much better 

namespace MyApplication 
{ 
    class Main 
    { 
     ... 
    } 
} 

如何在MyLibrary中定義MyLibrary.Entities作爲MyLibrary.App_Code.Entities的別名(從而避免每次使用組件時都需要手動執行)?

+2

很確定你不能。我會懷疑你能做的唯一事情就是實際改變命名空間。像下面的一些答案混淆不能實現你想要的。 –

+1

http://stackoverflow.com/questions/1799466/alias-a-namespace-globaly-for-the-entire-project 可能會有所幫助。看起來答案是你不能害怕。 –

+1

@CKnight - 即使這是在消費項目中,而不是消費項目,這似乎是這個問題所要求的。 –

回答

1

選項1:命名實體類(MyLibrary.App_Code.Entities)作爲MyLibrary.Entities

namespace MyLibrary.Entities 
{ 
    public class Foo 
    { 
     ...... 
    } 
} 

選項2的命名空間:using指令

using Entities = MyLibrary.App_Code.Entities; 

namespace MyApplication 
{ 
    class Main 
    { 
     var foo = new Entities.Foo(); 
    } 
} 

讓我知道如果你有任何問題。

相關問題