相対パス/ URLを使用して、Webアプリケーションのテキストファイルの内容を読み取るにはどうすればよいですか?
ファイルは、アプリケーションのルートにあるディレクトリにあります。
テスト環境は実稼働環境の正確なミラーではないため、アクセスしたいファイルへのフルパスを指定したくありません。
Server.MapPath("/path/to/file")
を使用して、その結果をFile.ReadAllText()
に渡します。
String template = File.ReadAllText(Server.MapPath("~/Templates/") + filename);
このコードスニペットも使用できます。
using System.IO;
using System.Web.Hosting;
using (StreamReader sr = new StreamReader(VirtualPathProvider.OpenFile("~/foo.txt")))
{
string content = sr.ReadToEnd();
}