錯誤CA1822:Microsoft.Performance:'SomeController.AnAction(string,string)'的'this'參數(或'Me'在Visual Basic中)從未使用過 。將該成員標記爲靜態(或在Visual Basic中共享),或者在方法體中使用 'this'/'Me'或至少使用一個屬性訪問器(如果 合適)。任何人都可以在控制器操作中解釋CA1822的目的和解決方案嗎?
當通過URL請求時,靜態操作產生404未找到。此操作按預期工作,代碼分析已關閉。這是什麼意思,什麼是適當的補救措施?
注意注意,動作的返回類型是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所以它應該工作。
請包括有問題的代碼或類似的snippit – robrich