Мне нравится css-файл для каждой папки View, только для организации. Таким образом, я могу работать с html и соответствующими css в одном каталоге вместо большого файла css.
Вот как я это делаю:
Сначала создал «Контроллер стилей», который собирается объединить все файлы в один:
public class StyleController : Controller
{
[OutputCache(Duration = 86400, VaryByParam = "none")]
public ActionResult Index()
{
var cssFiles = Directory.GetFiles(Server.MapPath("~/Views"), "*.css",
SearchOption.AllDirectories);
var sb = new StringBuilder();
foreach (var cssFile in cssFiles)
{
sb.Append(System.IO.File.ReadAllText(cssFile));
sb.Append(Environment.NewLine);
}
return Content(sb.ToString(), "text/css");
}
}
Затем в файле макета добавьте ссылку на файл стиля
@Styles.Render("~/Style")
Это отлично подходит для разработки, но в процессе работы я скорее извлекаю вывод StyleController в физический файл и использую функции пакета (измените строку "@ Styles.Render")