Everyone who's used ASP.NET master pages knows that you can specify which master page a content page should use via the content page's Page directive. Most people also know that you can also set it either programatically via code or via the Web.config file. But did you know you can also set it by folder?
This can come in quite handy when your site is organized by content type. For example, if you keep all your apple-related products in the /apples folder and all your orange-related products in the /oranges folder, you might want to create a style for each that complements the folder's content.


Continuing the above example, take a look at this short sample



Web.config file.
<?xml version="1.0"?>
<configuration>
<system.web>
<pages masterPageFile="~/fruit.master" />
</system.web>
<location path="apples">
<system.web>
<pages masterPageFile="~/apple.master" />
</system.web>
</location>
<location path="oranges">
<system.web>
<pages masterPageFile="~/orange.master" />
</system.web>
</location>
</configuration>





The first section specifies that the pages in this Web should use the fruit.master/apples folder and another for the /oranges folder. Under each of those, we specify which master page file should be used by Web forms in those folders. The net result of these settings is that pages in the /apples folder will use apple.master, pages in the /oranges folder will use orange.master, and all other pages in the Web will use fruit.master.



You can override these settings by specifying a master page at the page level, but otherwise, ASP.NET will follow the settings in the Web.config file to determine which master page to use for every Web form that includes an <asp:Content> control.









Keywords:ASP.NET,apple.master,Apply Master Pages By Folder,Quick tips