Solved

Virtual File Path

Posted on 2013-05-18
12
457 Views
Last Modified: 2013-05-20
Is there a .net method to convert a file path to a virual file path?

Example:

C:/somefile.pdf
convert to:
https://www.mysite.forms/somefile.pdf

Thank you
0
Comment
Question by:thenrich
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 3
  • 2
  • +1
12 Comments
 
LVL 53

Expert Comment

by:Scott Fell, EE MVE
ID: 39177403
What do you you mean by convert?  is the file outside of the website?  If that is the case, you would use file system object http://msdn.microsoft.com/en-us/library/aa711216(v=vs.71).aspx  and copy the file to a folder inside of your webroot.
0
 
LVL 5

Author Comment

by:thenrich
ID: 39177439
The file is inside the website.
0
 
LVL 5

Author Comment

by:thenrich
ID: 39177441
My mistake. Convert file path to:

www.mysite.com/forms/somefile.pdf
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 83

Expert Comment

by:CodeCruiser
ID: 39177731
Can you explain the situation?

There is Server.MapPath which basically does the opposite of what you want but I have not seen a function for what you need.
0
 
LVL 5

Author Comment

by:thenrich
ID: 39177745
I want the site to serve up a file based on a file structure.

I can't explicitly embed a link as files change daily. I need the site to read the file structure. Similar to FileZilla.
0
 
LVL 83

Expert Comment

by:CodeCruiser
ID: 39177750
Do you not know even the root folder path?

One option is to have a page which reads the file from disk and writes to client.
0
 
LVL 5

Author Comment

by:thenrich
ID: 39177756
I am using a treeview and emulating the structure just fine. My problem is the file itself. I have a directory in which FTP users write to a modify all the time. So even though I have a root there can be multiple levels to the file itself.
0
 
LVL 5

Author Comment

by:thenrich
ID: 39177757
I was hoping to us NavigateURL of the treeview and that's where I need the virtual path.
0
 
LVL 83

Assisted Solution

by:CodeCruiser
CodeCruiser earned 250 total points
ID: 39177785
>I need the virtual path.

Virtual path is under the site directory. If this root of treeview is under your site path, you can get list of files and directories and construct the virtual path.
0
 
LVL 53

Accepted Solution

by:
Scott Fell,  EE MVE earned 250 total points
ID: 39177849
I do this on multiple sites.  All the file live in a folder c:\root\sites\website.com\files  and you want to list each file in the the files folder and display them to the site as a link.


http://www.4guysfromrolla.com/webtech/faq/FileSystemObject/faq5.shtml

This is in classic asp but I believe you can use fso in .net

im objFSO
Set objFSO = Server.CreateObject("Scripting.FileSystemObject")

'Get the folder object associated with the directory
Dim objFolder
Set objFolder = objFSO.GetFolder("c:\root\sites\website.com\files")

'Loop through the Files collection
Dim objFile
For Each objFile in objFolder.Files
 Response.Write  "<a href=""/files/"&objFile.Name &""">"&objFile.Name &"</a>""
Next

'Clean up!
Set objFolder = Nothing
Set objFile = Nothing
Set objFSO = Nothing

Open in new window

0
 
LVL 5

Author Comment

by:thenrich
ID: 39177898
Codecruiser,
Yea it looks like I'll have to do some 'string-smithing' to get what I want. Was hoping for a more elegant solution.

Padas,
I don't see a solution in your posting. I'm already emulating the file structure?
0
 
LVL 28

Expert Comment

by:Ark
ID: 39183229
why not use base href + relative path?
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

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

Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
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.…
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa…

732 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