views:

39

answers:

0

I have the following folder structure in an ASP.NET MVC 2 app using Spark.

 [site root]
    home
       HomeController.cs
    Views
       Shared
          Index.spark

However, if I move Index.spark into the /home folder, I get the following error:

The view 'Index' or its master was not found. The following locations were searched:
~/Views/Home/Index.aspx
~/Views/Home/Index.ascx
~/Views/Shared/Index.aspx
~/Views/Shared/Index.ascx
Home\Index.spark
Shared\Index.spark

This is especially confusing because the file \home\index.spark does, in fact, exist. Any suggestions?

Moving index.spark into the /views/shared folder corrects the problem, but I don't want to cram all of my views into one folder.

update*

I modified DefaultDescriptorBuilder.cs in the Spark source:

   protected virtual IEnumerable<string> PotentialViewLocations(string controllerName, string viewName, IDictionary<string, object> extra)
    {
        return ApplyFilters(new[]
                                {
                                    "~/"+controllerName+"/"+viewName+".spark",
                                    controllerName + "\\" + viewName + ".spark",
                                    "Shared\\" + viewName + ".spark"
                                }, extra);
    }

by adding the line

                                    "~/"+controllerName+"/"+viewName+".spark",

which has corrected the problem. Anyone know if there is a way to do this other than modifying the source?