у меня есть этот (простой) код
<% Html.RenderAction("Version", "Generic"); %>
на главной странице моего приложения asp.net mvc 2.
Этот метод возвращает версию приложения.
У меня также есть этот код в моем контроллере:
class GenericController : BaseController
{
[ChildActionOnly]
public string Version()
{
try
{
string assemblyFile = Assembly.GetCallingAssembly().FullName;
FileInfo fi = new FileInfo(assemblyFile);
string version = fi.LastWriteTime.Year.ToString( ) + fi.LastWriteTime.Month.ToString() + fi.LastWriteTime.Day.ToString();
return version;
}
catch (Exception e)
{
return "1.0";
}
}
}
Теперь я получаю эту ошибку:
Не удалось выполнить дочерний запрос. Пожалуйста, изучите InnerException для получения дополнительной информации.
и неэкспертиза:
"Контроллер для пути '/ Account / LogOn' не найден или не найден
реализовать IController. "
Я думал о том, что, возможно, код не может быть выполнен, поскольку пользователь еще не вошел в систему и пытается перенаправить на метод входа и т. Д.
Итак, первое, о чем я подумал, это предоставить доступ в web.config (как и в случае с каталогом, содержащим css и изображения, он также должен быть доступен, когда вы не вошли в систему:
<location path="Content">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
но каков путь для этого (версии) метода?
(или, возможно, есть другая причина для исключения, я тоже открыт для этого ответа:))