RemoteAttribute в viewmodel и ActionNameAttribute в соответствующем методе действия (MVC3) - PullRequest
0 голосов
/ 25 октября 2011

Я только что обнаружил, что удаленная проверка с использованием RemoteAttribute не будет работать, если только:

  1. Метод действия для удаленной проверки не имеет атрибута [ActionName] или
  2. Метод действия для удаленной проверки имеет атрибут [ActionName], который не учитывает регистр для фактического имени метода действия.

С учетом следующего MVC генерирует исключение InvalidOperationException «Невозможно найти URL для удаленной проверки.»:

[ActionName("validate-my-widget")]
public virtual JsonResult ValidateMyWidget(string value1, string value2) 
{
...
}

Есть идеи, почему? Я использую T4MVC, если это имеет значение.

1 Ответ

1 голос
/ 25 октября 2011

Какое имя действия вы указываете в атрибуте Remote?

Если вы указываете имя метода действия (в отличие от имени, объявленного в атрибуте ActionName),тогда VirtualPathProvider сгенерирует URL-адрес, используя имя основного метода действия.Если вы введете имя, объявленное в атрибуте ActionName, URL-адрес будет создан с использованием имени метода, объявленного в атрибуте ActionName.

...