Полная ошибка - «Значение не может быть пустым. Имя параметра: virtualPath». Это происходит в наших QA и учебных средах (Win 2003 Server & IIS6), но, конечно, бросает вызов отдыху в отладчике. Хуже того, несмотря на разумный глобальный обработчик ошибок, ни одна трассировка стека не сопровождает ошибку, и ничто не записывается в журнал событий. Приложение представляет собой большое полностью глобализованное веб-приложение Asp.Net (VB), работающее под версией 2.0 Framework. Он использует обычную структуру «App_LocalResources» для файлов resx, и на сегодняшний день она выполнена достаточно хорошо. Есть несколько мест в приложении, где используется такой код:Случайная ошибка «virtualPath» - приложение Asp.Net
Dim x As New Compilation.ExpressionBuilderContext(Control.TemplateControl)
Dim path As String = x.VirtualPath
Dim res As String = HttpContext.GetLocalResourceObject(path, resourceKey).ToString
Однако Try/Поймать блок вокруг этого кода работает должным образом, когда я принудительно «путь» переменная не будет ничего. Мы также используем этот синтаксис везде заголовки столбцов данных сетки:
<asp:TemplateColumn HeaderText="<%$ Resources:resHeader %>" >
Мы также используем значительное количество Ajax и динамически загружать элементы управления ASCX в заполнители постоянно. Если кто-нибудь может понять это, я бы очень благодарен за помощь.
Спасибо, Ларри