23

I get the following error when I try to compile an asp.net site using a custom build script.

error ASPCONFIG: 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.

Although the description is in detail I do not understand what it means exactly. I have not configured IIS to host this website and I don't think I will be able to as I am running Vista Home Basic version. So the website cannot be built using custom scripts?Please reply as I want to test this feature.

2

5 Answers 5

48

I had this SAME EXACT problem and finally discovered a rogue Web.config was placed in my obj folder ... do yourself a favor and do a search in all the sub-directories for a web.config file. I deleted it and all was back to normal.

Sign up to request clarification or add additional context in comments.

9 Comments

Thanks, that did the solved the problem for me.I had the same problem. I deleted the object\debug folder and it worked again.
+1 - Nice, thanks. Another note, if you create the backup folder within your project when converting, you will need to remove/rename the web.config there too.
thanks! this was driving me crazy for hours. my stray web.config was in the /views folder. sigh
@Patricia that's normal for ASP.NET MVC - it's more likely a web.config in the obj folder created by doing a Publish
@DanielO -- I tried to upvote your comment, as it is precisely the problem I had. Publish was indeed the source of the problem.
|
15

The rogue web.config file in the obj folder is most likely to be caused when you do a Publish Web Site. So just clean it up after you've done the publish.

Comments

5

if this happens after the virtual-directory is already created do the following:

  • right-click on web.config
    • properties
      • Build Action: Content
      • Copy to Output directory: Do not copy
  • if transformed (apply to all configurations)
    • properties
      • Build Action: None
      • Copy to Output directory: Do not copy

2 Comments

The first option worked fine for me, even though I have web config transformations.
Man, this issue tripped me up for so long. This was the issue!
4

It is likely that your web.config file is placed in a directory that is not the root of the application. On most versions of IIS, you can convert any folder on your web site to an application root:

  1. Open IIS and navigate to the appropriate folder
  2. Right-click on the folder, select properties
  3. Under Application Settings, and beside Application name, click Create
  4. Apply and close

If this does not fix your problem, there may be another configuration error, either with IIS or your application.

Comments

0

In IIS, go to the folder that the app runs under, right click it, go to properties. On the Directory tab, look for "Application settings". Click the create button.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.