tags:

views:

5087

answers:

6

Hi! I am working with a Sharepoint document library and I'm trying to locate the source of the document library page. I'm working on the Sharepoint server. I just can't find it, where should it be stored?

Thank you!

A: 

How can you be working with it if you don't know where it's located? What are you trying to do?

Rik
+1  A: 

Your question is not very clear...

Are you refering to the "source" code of the document library pages? It depends if you have edited them with SharePoint Designer or not. If not they should be located under 12 hive (c:\program files\common files\microsoft shared\web server extensions\12). If any modification were done using SPD2007 the files will be stored in the content database.

...or are you refering to the "source" where the files are stored? All the files saved in document libraries are stored in the content database as blobs in the AllUserData table.

Sacha
I was refering to the Source Code, as you said, located under the 12 hive... but where? Thank you!
Layla
A: 

You the pages appear as 'aspx' pages, they are not stored on the server anywhere as aspx pages. All pages are either stored in the DB as a BLOB, or 'put together' at runtime from information stored in the DB. SharePoint is an odd monster :)

If you are going to edit the look, there are a few options:

  • SharePoint Designer (I hate this app)
  • Make another 'web part page' that includes the document library inside of it while changing the content around it (easiest and best approach IMO)
  • make a specialized web-part (most difficult)

SharePoint takes a whilet o get the full grasp of... it is strange.

naspinski
A: 

If I understand what Sacha and Naspinski are saying, when I am creating a new Document library, the look of the page is retrieved from the 12 hive and stored (ghosted?) into the DB. The page is no more stored into the 12 hive, as for each document library I will have a somehow "customized page".

Is that true?

Layla
Add as an edit (clarification) to your question instead of an answer, this is not a discussion board.
spoon16
+2  A: 

SharePoint does not store the pages directly in the filesystem. The mechanism is a little less straightforward.

To understand this mechanism, You have to understand the concepts of Ghosting/Unghosting, and the ASP.NET Virtual Path Provider. The SharePoint stores the pages in the Database as BLOBS, and serves them up using the ASP.NET Virtual path provider.

The ASP.NET Virtual Path Provider provides an abstraction between ASP.NET and FileSystem. Instead of getting a System.IO.FileStream object directly from the filesystem, the provider uses MapPathBasedVirtualPathProvider and the MapPathBasedVirtualFile classes to get the FileStream object.

This abstraction allows ASP.NET to serve up pages from anywhere, without having to store the pages in an actual file system. This concept is used to implement Ghosting/Unghosting which basically means having a single copy of the page, and serving them up as different pages.

SharePoint leverages this new feature in ASP.NET 2.0, along with the improved BLOB storage functionality in SQL Server 2005 to serve up pages.

ashwnacharya
+1  A: 
spoon16