Я использую ASP.NET MVC 2 с SparkViewEngine 1.1 и получаю сообщение об ошибке Требуется ссылка на объект для нестатического поля, метода или свойства 'Spark.Web.Mvc.SparkView .Url.get ', когда я использую следующий код в файле представления Application.spark
<global baseImagePath='Url.Content(Context,"~/Content/_images")' type="string" />
Что я пытаюсь сделать, так это определить путь к базовому изображению как глобальную переменную, на которую можно ссылаться в шаблонах страниц.
Например, в Home / Index.spark, который использует мастер Application.spark, у меня будет следующий фрагмент кода в представлении
<a href="..."><img src="${baseImagePath}" alt="..." /></a>
В качестве обходного пути, я могу установить жестко запрограммированное значение, когда я устанавливаю baseImagePath, выполнив <global baseImagePath='"~/Content/_images"' type="string" />
, но я также хочу иметь возможность разрешать «~» перед рукой.
Есть предложения?
Спасибо!
Редактировать
Я добавляю свое решение здесь согласно предложениям Роба
В Shared / _global.spark я добавил <use namespace="System.Web" />
, чтобы у меня был доступ к пространству имен System.Web.
В Shared / Application.spark , я добавил
<global baseImagePath='VirtualPathUtility.ToAbsolute("~/Content/_images")' type="string" />