Может ли кто-нибудь объяснить цель и разрешение CA1822 в отношении действия контроллера?

Ошибка CA1822: Microsoft.Performance: параметр «этот» (или «Я» в Visual Basic) «SomeController.AnAction(строка, строка)» никогда не использовал. Отметьте элемент как статический (или общий в Visual Basic) или используйте 'this'/'Me' в теле метода или по крайней мере один метод доступа к свойству, если подходящее.

Статическое действие выдает 404 not found при запросе через URL. Действие работает должным образом с отключенным анализом кода. Какой в ​​этом смысл и какое правильное средство?

Обратите внимание, что возвращаемый тип действия — PartialViewResult, не похоже, что анализ кода жалуется на это, если возвращаемый тип — ActionResult.

    [HttpPost]
    public PartialViewResult BlankEditorRow(string formId, Common.Entities.Common.ObjTypeEnum objType)
    {
        if (objType == Common.Entities.Common.ObjTypeEnum.Regular)
            return new AjaxPartialViewResult("_RowEditor", new ProcedureEntryEntity()) { UpdateValidationForFormId = formId };
        else
            return new AjaxPartialViewResult("_TemplateRowEditor", new ProcedureEntryEntity()) { UpdateValidationForFormId = formId };
    } 

Обновление: Похоже, изменение типа возвращаемого значения на ActionResult устраняет ошибку, а PartialViewResult является ActionResult, поэтому он должен работать.

12
задан MetaGuru 24 May 2012 в 16:31
поделиться