Solved

Server.MapPath("/") in asp.net 2.0

Posted on 2007-12-06
3
9,570 Views
Last Modified: 2010-04-21
in asp.net 2.0 I am trying to use the Server.MapPath("/") to return the root directory of the application...

it errors with:
Exception Details: System.InvalidOperationException: Failed to map the path '/'.
Label1.Text = "Mail sent: " & Server.MapPath("/")

what am I doing wrong? thanks!
0
Comment
Question by:Starr Duskk
3 Comments
 
LVL 29

Accepted Solution

by:
Göran Andersson earned 400 total points
ID: 20423947
That's a bit surprising.

Anyhow, the path "/" doesn't refer to the root directory of the application, but the root directory of the web site. Use "~/" to get the root directory of the application.
0
 
LVL 7

Assisted Solution

by:nisarkhan
nisarkhan earned 100 total points
ID: 20424013
RootUrl - the fully qualified path to the page that should serve as the root node in the site map. If this value isn't specified, the default value is ~/Default.aspx.

see my sample in code snippet:


server.MapPath("/IssueManagement/database/Issues.mdb")
IssueManagement is the app name/virtual directory. database is the directory under it.
This gets mapped to C:\Inetpub\wwwroot\IssueManagement\database\Issues.mdb

Hope this helps
Public Overrides Function BuildSiteMap() As System.Web.SiteMapNode
    'Need to lock to ensure thread safety, since multiple pages in the app
    'might be trying to call this method concurrently
    SyncLock Me
        'See if a root has been defined
        If _root IsNot Nothing Then
            'We have a root - but has the underlying file system been changed?
            If Not _fsMonitor.HasChanged Then
                'No change to FS, returned the cached root
                Return _root
            End If
 
            'The file system has been changed since we've last called
            'BuildSiteMap - we need to rebuild the sitemap
        End If
 
        'If we reach here, either we don't have a root or the file system has
        'been changed must build up the Site Map. Clear out the site map, if 
        'it already exists...
        Refresh()
 
        'Create a root node
        _root = CreateFolderNode(HttpContext.Current.Server.MapPath(RootUrl), RootUrl)
        _root.Title = RootTitle
 
        'Establish the cache dependency
        _fsMonitor = New CacheDependency(HttpContext.Current.Server.MapPath("~/"))
 
        AddNode(_root)  'Add the root to the site map
 
        'Recurse through the file system, adding nodes
        BuildSiteMapFromFileSystem(_root, "~/")
 
        Return _root
    End SyncLock
End Function

Open in new window

0
 
LVL 2

Author Closing Comment

by:Starr Duskk
ID: 31413274
thanks guys!
0

Featured Post

Netscaler Common Configuration How To guides

If you use NetScaler you will want to see these guides. The NetScaler How To Guides show administrators how to get NetScaler up and configured by providing instructions for common scenarios and some not so common ones.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
This Micro Tutorial will give you a basic overview how to record your screen with Microsoft Expression Encoder. This program is still free and open for the public to download. This will be demonstrated using Microsoft Expression Encoder 4.
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question