2012-02-24 3 views
7

VB.Net 환경에서 왔는데 여기서 Imports System을 사용하고 IO.Directory.GetFiles(...)을 사용합니다.IO.Directory.GetFiles를 쓸 수없는 이유는 무엇입니까?

한편, using System;은 접두사없이 System.을 쓰지 않고도 IO.Directory으로 작성하는 것으로 충분합니다. 유일한 해결 방법은 것 같습니다 using IO = System.IO;

왜?


예제 코드 :

using System; 
using System.IO; 

namespace Test { 
    class Program { 
     static void Main(string[] args) { 
      System.Console.WriteLine(IO.Directory.GetFiles(System.Environment.CurrentDirectory)[0]); 
     } 
    } 
} 

편집 : 내 질문은 내 코드를 구체적으로 작업하지만 얻기 위해 무엇을해야하지 "나는 IO.Directory.GetFiles 쓰기 왜 캔트?"

+0

정확한 클래스 이름을 입력 할 때 클래스 이름 오른쪽 하단에 추가되지 않은 네임 스페이스가 항상 작은 표시로 나타납니다. 빨간색 표시 위에 마우스를 올려 놓고 필요에 따라 확장 할 수 있습니다. – nawfal

답변

8

System.IO를 사용하여

추가;

예상대로 동작합니다. C#은 사용 지시문 (또는 완전한 자격)없이 자식 네임 스페이스를 사용할 수 없습니다.

+0

+1 관심의 대상이 될 것입니다. 위와 같은 요구 사항과 관련하여 MSDN에 대한 언급이있을 것입니다. – sll

+0

여기에 있습니다. http://msdn.microsoft.com/en-us/library/0d941h9d.aspx –

+0

이렇게하면 ' 'IO.Directory.GetFiles'를 쓸 때'IO '라는 이름은 현재 컨텍스트에 존재하지 않습니다. –

0

C#에서는 v #와 vb.NET 사이에 차이가있을 가능성이 있습니다.

당신이 C 번호에 vb.Net 코드를 변환하는 경우

System.IO.Directory.GetFiles(...) 

또는 추가이 사이트의 사용은 당신에게 ryou FO 많은

vb.net to c#

코드 도움이 될 수 있도록보다

using System.IO; 

당신을 위해 할 것입니다.

+1

나는'System' 접두사를 제거하고 싶습니다. –

+0

@ Clément, using using System.IO;를 맨 위에있는 네임 스페이스 컬렉션에 추가하십시오! – nawfal