Browse Source

Do not show HttpApplication derived class in list of models in ASP.NET MVC Add View dialog.

pull/18/head
Matt Ward 14 years ago
parent
commit
280a79ad9b
  1. 7
      src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcModelClassLocator.cs
  2. 11
      src/AddIns/BackendBindings/AspNet.Mvc/Test/Src/MvcModelClassLocatorTests.cs

7
src/AddIns/BackendBindings/AspNet.Mvc/Project/Src/MvcModelClassLocator.cs

@ -44,10 +44,17 @@ namespace ICSharpCode.AspNet.Mvc
{ {
if (IsBaseClassMvcController(c)) { if (IsBaseClassMvcController(c)) {
return false; return false;
} else if (IsHttpApplication(c)) {
return false;
} }
return true; return true;
} }
bool IsHttpApplication(IMvcClass c)
{
return c.BaseClassFullName == "System.Web.HttpApplication";
}
bool IsBaseClassMvcController(IMvcClass c) bool IsBaseClassMvcController(IMvcClass c)
{ {
return c.BaseClassFullName == "System.Web.Mvc.Controller"; return c.BaseClassFullName == "System.Web.Mvc.Controller";

11
src/AddIns/BackendBindings/AspNet.Mvc/Test/Src/MvcModelClassLocatorTests.cs

@ -88,5 +88,16 @@ namespace AspNet.Mvc.Tests
Assert.AreEqual(0, count); Assert.AreEqual(0, count);
} }
[Test]
public void GetModelClasses_HttpApplicationDerivedClassInProject_ClassNotReturnedInModelClasses()
{
CreateLocator();
AddModelClassWithBaseClass("System.Web.HttpApplication", "ICSharpCode.MvcApplication");
GetModelClasses();
int count = GetModelClassCount();
Assert.AreEqual(0, count);
}
} }
} }

Loading…
Cancel
Save