2010-04-23 8 views
8

Właśnie skonwertowałem projekt na VS 2010 i dzieje się coś naprawdę dziwnego z przestrzeniami nazw. Podam przykład następujący kod używany do pracy w VS2008:Dlaczego obszary nazw działają w Visual Studio 2010?

namespace MySystem.Core.Object 
{ 
    using MySystem.Core.OtherObject; 
    ... 
} 

Ale teraz tak nie jest, to albo chce cała sprawa należy umieścić poza przestrzenią nazw tak:

using MySystem.Core.OtherObject; 

namespace MySystem.Core.Object 
{ 
    ... 
} 

lub przepisać to lubią:

namespace MySystem.Core.Object 
{ 
    using OtherObject; 
    ... 
} 

rozumiem dlaczego to działa, a może to jest poprawny sposób obsłużyć tego, ale teraz musielibyśmy zmienić tysiące linii kodu! Co nie jest fajne.

Jakiś pomysł na obejście tego wymogu?

+7

Czy jesteś pewien, że nie mylisz dyrektyw 'używając' z przestrzeniami nazw? –

+0

oops, tak, miałem tam zbyt wiele zastosowań. to był długi dzień! –

+0

Wiesz, sam go wypróbowałem i działa bardzo dobrze. Czy zdarza Ci się mieć jakąś wersję beta? Jaka jest wersja VS? –

Odpowiedz

1

Może to być spowodowane przekonwertowaniem na C# z VB.NET. "Usings" w VB.NET to to samo co "Import" w C#. Kiedy więc nastąpiła konwersja/uaktualnienie, uznano, że zamierzasz użyć instrukcji using() {} i umieścić ją w przestrzeni nazw. Przepisz swoje oferty jako "import" i powinno działać.

+0

Nie, to jest i był cały kod C#. –

Powiązane problemy