Visual Studio 2017では、このように構造化されたプロジェクトファイルがあります。ユニットテスト 'Employee'は名前空間ですが、タイプのように使用されます
[ソースコード]
Project
Employee (namespace)
Employee (.cs file)
Tests (Unit Test within the same solution referencing Project)
Employee (namespace)
EmployeeTest (.cs unit test)
テスト/会社員/ EmployeeTest.cs
namespace Tests.Employee
{
[TestClass]
public class EmployeeTest
{
[TestMethod]
public void TestConstructor()
{
Employee employee = new Employee(); // error
}
}
}
エラー:
'Employee' is a namespace but used like a type
Question:
エラーを修正するだけでなく、ファイルを構造化して名前にぶつからないようにするにはどうすればよいですか?名前空間名をクラス名と同じにしておきたいフォルダ構造は、それを避けることはできません。
注:
私はあなたが名前空間としてTests.Employeeを持って開発
パッケージとは何を指していますか?アセンブリ? – Eric
申し訳ありませんが、javaと混在しています。パッケージは名前空間を意味し、私の質問を編集します。 –
[名前空間とその名前空間の型に同じ名前を使用しないでください。](https://msdn.microsoft.com/en-us/library) /ms229026.aspx)[Eric Lippertの説明](https://blogs.msdn.microsoft.com/ericlippert/2010/03/09/do-not-name-a-class-the-same-as-its)も参照してください。 -namespace-part-one /) –