But, of course, when I run it in IIS (outside of Visual Studio), the URL of
the "base" of the application will be http://localhost/Default.aspx
without the "Docroot" directory showing.

This poses a little problem for me in development:

Let's say I want to build my application so that I can rewite the URL of the
site from within the application based on runtime properties. The problem is,
I don't know how to rebuild the path of "~" because it'll be different if
it's running in VS as opposed to normally in IIS.

Is there a way to "know" this in runtime? And why *is* it different anyway?

Advertisements

"Alex Maghen" <> wrote in message
news:...
>I am confused about something: Let's say I have a web application I've
> developed and it's sitting in a directory called "Docroot". In that
> Docroot
> folder is a Web.config and a Default.aspx.
>
> Whe I run the application from within Visual Studio (2008), the URL in IE
> when it runs is:
> http://localhost:2635/Docroot/Default.aspx
> with the "Docroot" directory included in the URL.
>
> But, of course, when I run it in IIS (outside of Visual Studio), the URL
> of
> the "base" of the application will be
> http://localhost/Default.aspx
> without the "Docroot" directory showing.
>
> This poses a little problem for me in development:
>
> Let's say I want to build my application so that I can rewite the URL of
> the
> site from within the application based on runtime properties. The problem
> is,
> I don't know how to rebuild the path of "~" because it'll be different if
> it's running in VS as opposed to normally in IIS.
>
> Is there a way to "know" this in runtime? And why *is* it different
> anyway?
>
> Alex

I'm not sure why it's different, but you can change it in VS by clicking
your web site in the Solution Explorer then setting the "Virtual Path"
property in the Properties window (to, say, "/").

You can also convert the virtual path at runtime using
Server.MapPath("~/Default.aspx").

Advertisements

Thanks. I didn't know you could change this Virtual Path value in VS. That
make things a LOT easier.

Alex

"Scott Roberts" wrote:
>
> "Alex Maghen" <> wrote in message
> news:...
> >I am confused about something: Let's say I have a web application I've
> > developed and it's sitting in a directory called "Docroot". In that
> > Docroot
> > folder is a Web.config and a Default.aspx.
> >
> > Whe I run the application from within Visual Studio (2008), the URL in IE
> > when it runs is:
> > http://localhost:2635/Docroot/Default.aspx
> > with the "Docroot" directory included in the URL.
> >
> > But, of course, when I run it in IIS (outside of Visual Studio), the URL
> > of
> > the "base" of the application will be
> > http://localhost/Default.aspx
> > without the "Docroot" directory showing.
> >
> > This poses a little problem for me in development:
> >
> > Let's say I want to build my application so that I can rewite the URL of
> > the
> > site from within the application based on runtime properties. The problem
> > is,
> > I don't know how to rebuild the path of "~" because it'll be different if
> > it's running in VS as opposed to normally in IIS.
> >
> > Is there a way to "know" this in runtime? And why *is* it different
> > anyway?
> >
> > Alex
>
> I'm not sure why it's different, but you can change it in VS by clicking
> your web site in the Solution Explorer then setting the "Virtual Path"
> property in the Properties window (to, say, "/").
>
> You can also convert the virtual path at runtime using
> Server.MapPath("~/Default.aspx").
>
>

Share This Page

Welcome to The Coding Forums!

Welcome to the Coding Forums, the place to chat about anything related to programming and coding languages.

Please join our friendly community by clicking the button below - it only takes a few seconds and is totally free. You'll be able to ask questions about coding or chat with the community and help others.
Sign up now!