Маленькая библиотека для получения полного пути к файлам-шаблонам находящиеся в одной папке.
Через NuGet. Если у вас в решении один проект:
PM> Install-Package IPEIT.TemplateResolver.Start
Если у вас в решении несколько проектов, то установите пакет Start там, где будут находится ваши шаблоны. А в остальных, установите пакет:
PM> Install-Package IPEIT.TemplateResolver
Если ваш проект содержит файл конфигурационный файл (App.config), то после установки в него Start пакета,
должна появиться следующая строка строка в секции appSettings
:
<add key="WebFramework.TemplatesPath" value="..\..\TemplateFiles" />
Если же строка не появилась, то добавьте его вручную в соответствующую секцию.
Значение value данной настройки содержит путь, где будут храниться ваши файлы-шаблоны. Этот путь относителе к папке с бинарными файлами. Обычно это папка bin в ASP.NET или bin/Debug в консольных приложениях. Измените данное значение на то, где будет храниться ваша папка с шаблонами.
Затем, создайте эту папку и перенесите туда необходимые вам файлы.
Теперь библиотека готова к использованию.
Допустим, что вы поместили файл readme.txt в папку с шаблонами. Тогда, вы можете получить полный путь к этому файлу с помощью следующих строк:
var path = TemplateResolver.ResolveFilePath("readme.txt");
Console.WriteLine(path);
либо проще:
var path = TemplateResolver.ResolveFilePath("readme");
Console.WriteLine(path);
Все методы находятся в классе TemplateResolver. Не забудьте добавить пространство имен:
using IPEIT.TemplateResolver;
Можно не указывать некоторые расширения файлов, они автоматический подставятся. На данный момент можно не указывать названия следующих расширении:
txt|pdf|rtf|ppt|pptx|xls|xlsx|doc|docx
Вы спокойно можете хранить свои шаблоны в подпапках. Получить к ним полный путь можно будет так:
var path = TemplateResolver.ResolveFilePath("подпапка\\readme");
Console.WriteLine(path);
Если же вы по какой-то причине захотели получить путь к папке шаблонов,
то это можно слелать через метод TemplateResolver.GetTemplatesDir()