Browse Source

Fix MvcScaffolding generated DbContext class not using project's root namespace.

pull/28/head
Matt Ward 14 years ago
parent
commit
d9fc631e31
  1. 12
      src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectProperty.cs
  2. 24
      src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectPropertyTests.cs
  3. 6
      src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableProject.cs

12
src/AddIns/Misc/PackageManagement/Project/Src/EnvDTE/ProjectProperty.cs

@ -30,6 +30,8 @@ namespace ICSharpCode.PackageManagement.EnvDTE
return GetFullPath(); return GetFullPath();
} else if (IsOutputFileName()) { } else if (IsOutputFileName()) {
return GetOutputFileName(); return GetOutputFileName();
} else if (IsDefaultNamespace()) {
return GetDefaultNamespace();
} }
return EmptyStringIfNull(value); return EmptyStringIfNull(value);
} }
@ -65,6 +67,16 @@ namespace ICSharpCode.PackageManagement.EnvDTE
return targetFramework.TargetFrameworkName.ToString(); return targetFramework.TargetFrameworkName.ToString();
} }
bool IsDefaultNamespace()
{
return IsCaseInsensitiveMatch(Name, "DefaultNamespace");
}
string GetDefaultNamespace()
{
return MSBuildProject.RootNamespace;
}
MSBuildBasedProject MSBuildProject { MSBuildBasedProject MSBuildProject {
get { return project.MSBuildProject; } get { return project.MSBuildProject; }
} }

24
src/AddIns/Misc/PackageManagement/Test/Src/EnvDTE/ProjectPropertyTests.cs

@ -209,7 +209,29 @@ namespace PackageManagement.Tests.EnvDTE
string fileName = (string)project.Properties.Item("OutputFileName").Value; string fileName = (string)project.Properties.Item("OutputFileName").Value;
Assert.AreEqual(@"MyProject.exe", fileName); Assert.AreEqual("MyProject.exe", fileName);
}
[Test]
public void Properties_GetDefaultNamespaceProperty_ReturnsRootNamespaceForProject()
{
CreateProperties();
msbuildProject.RootNamespace = "MyProjectRootNamespace";
string defaultNamespace = (string)project.Properties.Item("DefaultNamespace").Value;
Assert.AreEqual("MyProjectRootNamespace", defaultNamespace);
}
[Test]
public void Properties_GetDefaultNamespacePropertyUsingUppercaseName_ReturnsRootNamespaceForProject()
{
CreateProperties();
msbuildProject.RootNamespace = "MyProjectRootNamespace";
string defaultNamespace = (string)project.Properties.Item("DEFAULTNAMESPACE").Value;
Assert.AreEqual("MyProjectRootNamespace", defaultNamespace);
} }
} }
} }

6
src/AddIns/Misc/PackageManagement/Test/Src/Helpers/TestableProject.cs

@ -12,6 +12,7 @@ namespace PackageManagement.Tests.Helpers
{ {
public bool IsSaved; public bool IsSaved;
string assemblyName; string assemblyName;
string rootNamespace;
public ItemType ItemTypeToReturnFromGetDefaultItemType { public ItemType ItemTypeToReturnFromGetDefaultItemType {
get { return TestableProjectBehaviour.ItemTypeToReturnFromGetDefaultItemType; } get { return TestableProjectBehaviour.ItemTypeToReturnFromGetDefaultItemType; }
@ -74,5 +75,10 @@ namespace PackageManagement.Tests.Helpers
get { return assemblyName; } get { return assemblyName; }
set { assemblyName = value; } set { assemblyName = value; }
} }
public override string RootNamespace {
get { return rootNamespace; }
set { rootNamespace = value; }
}
} }
} }

Loading…
Cancel
Save