2012-03-27 2 views
0

Я работаю над asp.net (vb, может быть, это может что-то изменить)asp.net load file class library

У меня есть проект, использующий как библиотеку классов. Я хочу, чтобы он загружал текстовый файл. файл находится в папке по данному проекту

usely Я использую «File.Exists» и «Server.MapPath (« ~ »)». , но у меня нет сервера lib.

Я ищу способ использования файла в качестве контента или ресурса. но на данный момент я не добился успеха (вероятно, моя ошибка)

Итак, если вы знаете способ сделать то, что я хочу? Или как использовать файл в качестве ресурса, например, потоком или чем-то еще?

Я смотрел на это, но моя первая попытка не работает (http://keithelder.net/2007/12/14/How-To-Load-an-Embedded-Resource-From-A-DLL/)

+0

у меня будет небольшая проблема, потому что моя структура не копируют мой текстовый файл в IIS. – forX

ответ

1

Добавить System.Web в качестве ссылки проекта в библиотеку классов, а также использовать HttpContext:

using System.Web; 

public class Foo 
{ 
    public void Bar() 
    { 
     var path = HttpContext.Current.Server.MapPath("~/somefolder/somefile.txt"); 
    } 
} 
+0

Я пытаюсь, httpcontext можно использовать. но с ... Я получаю исключение высокого уровня: System.Web.HttpException не удалось получить ... – forX

+0

Его можно или не использовать? Предполагая, что вы имели в виду, что его нельзя использовать, почему? –

+0

HttpContext.Current.Server.MapPath ("~") - это корень моего сайта, но MapPath ("..."); вызывают ошибку – forX