Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 292
  • Last Modified:

SiteMapPath Control

Hello All,

I have a book called "Beggining ASP.NET 2.0" by WROX.

Right now I am in Chapter 3 trying to do the example on SiteMapPath Control on page 88.
Whenever I run it, I get the following error and I can't figure out why it's happening.

"It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level.  This error can be caused by a virtual directory not being configured as an application in IIS."

First of all, why is "IIS" being mentioned.  Isn't it supposed to be "Cassini"?

Thank you any help will truly be appreciated.  Thanks.
  • 2
1 Solution
Well, I'd need more information, could you post your web.config file here, as it is most likely there the problem lies.
IsaacSharePoint Client Side DeveloperAuthor Commented:
<?xml version="1.0"?>
<!-- Note: As an alternative to hand editing this file you can use the web admin tool to
       configure settings for your application. Use the Website->Asp.Net Configuration option
       in Visual Studio.
     A full list of settings and comments can be found in machine.config.comments usually
     located in \Windows\Microsft.Net\Frameworks\v2.x\Config -->
    Mode defines certain feature availability:
      Full: No restrictions
      Real: Runs as if a real site, without the view code, download and user/role view links
    <add key="mode" value="Full" />
            define the connection string to the database
     <add name="WroxUnited"
           connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|WroxUnited.mdf;Integrated Security=True;User Instance=True"
           providerName="System.Data.SqlClient" />

      <add name="Page" type="Wrox.Web.GlobalEvents.ThemeModule" />

            Set compilation debug="true" to insert debugging symbols into the compiled page.
            Because this affects performance, set this value to true only during development.
    <compilation debug="true">
                  Set forms authentication and define the login page
    <authentication mode="Forms">
      <forms loginUrl="Default.aspx" />
                  Enable the role manager
                  This controls access to pages and the visibility of certain menu items
    <roleManager enabled="true"/>
    <anonymousIdentification enabled="true"/>
            The <customErrors> section enables configuration of what to do if/when an unhandled
            error occurs during the execution of a request.  Specifically, it enables developers
            to configure html error pages to be displayed in place of a error stack trace.

            <customErrors mode="RemoteOnly">
      <error statusCode="404" redirect="missingPage.aspx"/>

                  Redefine the Site Map Provider, to add the security trimming attribute,
                  which is off by default
    <siteMap defaultProvider="AspXmlSiteMapProvider" enabled="true">
        <add name="AspXmlSiteMapProvider" type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
          siteMapFile="web.sitemap" securityTrimmingEnabled="true"/>

                  Define the SMTP Mail server settings
                  Required for the PasswordRecovery control (and possibly mailshots)
            <smtpMail from="admin@wroxunited.com" serverName="your_smtp_server">
                  Define the user profile properties
    <profile enabled="true">
        <add name="MemberName"/>
        <add name="Name"/>
        <add name="Address"/>
        <add name="City"/>
        <add name="County"/>
        <add name="PostCode"/>
        <add name="Country"/>
        <add name="Mailings" type="System.Boolean"/>
        <add name="Email"/>
        <add name="Theme"/>
        <add name="Cart" serializeAs="Binary" type="Wrox.Commerce.ShoppingCart" allowAnonymous="true"/>

Hmm, I can't see any thing wrong with this code, as I have tested it.
However I still belive the problem lies in a web.config file
Do you have other web.config's in other folders, because it is most likly there the problem lies.
The problem is that your trying to override a setting set in the root, or at application level, that requires the the folder to be set as an virtual directory, and thus get a new application i IIS.
Since this i cassini, i'm not sure how do this, but what I would have done is to change the .config file in question so that it doesn't break the website.

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now