For people that will encounter this problem i will answer my own question so they don't have to follow links to other websites.
If you want to use the Server.Mappath, you won't be able to do this when using a DAL or BL.
You can gain access to these objects (assuming they are available at the time given that they are contextual) by using the HttpContext.Current property. This property gives you the current context. However you are now trying your DAL/BL to ASP.NET.
So what you could do to fix this issue is getting the Server.Mappath on a place where it is contextual, like in your Code Behind.
GL!