我正在移植orchard中的现有网站,遗憾的是现有的css结构不是很好,我需要几个辅助函数来使网站正常工作。
目前我正在重新设置我正在定制的每个形状的备用.cshtml文件中的转换函数。
它始终是相同的功能,我想在某个位置移动它,使其可重复使用,更容易使用。
我还想让它特定于主题(在我正在创建的主题文件夹中)
功能非常简单
@functions{
string ConvertColorToStyle(string color){
string menuStyle = "";
switch(color)
{
case "Azure": menuStyle = "secondary_nav_area"; break;
case "DarkGreen": menuStyle = "secondary_nav_areaDiscoServices"; break;
case "LightGreen": menuStyle = "secondary_nav_areaPreClinAndClinical"; break;
case "Violet": menuStyle = "secondary_nav_areaAPI"; break;
case "LightViolet": menuStyle = "secondary_nav_areaSSC"; break;
case "DarkAzure": menuStyle = "secondary_nav_areaPharma"; break;
case "DeepAzure": menuStyle = "secondary_nav_areaIDFDaM"; break;
case "DeepBlue": menuStyle = "secondary_nav_areaIDDS"; break;
case "Orange": menuStyle = "secondary_nav_areaClinServices"; break;
case "Cyan": menuStyle = "secondary_nav_areaConsulting"; break;
case "Indigo": menuStyle = "secondary_nav_areaINDiGO"; break;
case "LightAzure": menuStyle = "secondary_nav_areaPAC"; break;
default: menuStyle = "secondary_nav_area";
break;
}
return menuStyle;
}}
但是我希望通过将一个function.cshtml文件放在asp.net mvc项目的App_Code文件夹中来分享它,就像可以做的那样。
有没有办法在Orchard的主题中的所有视图中共享此功能?
答案 0 :(得分:2)
当然:将一个项目文件添加到与主题同名的主题中,然后使用暴露该方法的静态类向其添加一个cs文件。然后,您就可以在视图中使用该功能。