방금 ASP.Net MVC 4 RC를 설치하여 ASP.Net MVC 4 베타를 대체했습니다. 기존 응용 프로그램을 실행하려고하면 AntiForgeryToken
이 더 이상 사용되지 않는다는 오류 메시지가 나타납니다. 여기에 내 코드입니다 :AntiForgeryToken은 ASP.Net MVC 4 RC에서 더 이상 사용되지 않습니다.
using (Html.BeginForm("", "", FormMethod.Post, new { id = "MonthElectionForm" }))
{
@Html.AntiForgeryToken("AddEditMonthElection")
}
---- UPDATE ---
ASP.Net MVC 4 RC는 ValidateAntiForgeryToken 속성과 AntiForgeryToken의 HTML 도우미의 소금 속성이 사용되지 않는했다. 그래서, 지금 내 코드는 다음과 같습니다
컨트롤러 :
이 [HttpPost]
[ValidateAntiForgeryToken]
public JsonResult CreateCompany(CompanyDataEntryViewModel modelData)
{...}
형태 :
@using (Html.BeginForm("", "", FormMethod.Post, new { id = "CreateCompanyDataEntryForm" }))
{
@Html.AntiForgeryToken()
...
}
가 생성 된 HTML을 보면은, AntiForgeryToken 여전히 숨겨진 필드를 생성하고 암호화 된 가치를 제공합니다. 내 행동은 여전히 효과가 있습니다. 그러나 암호화 과정에서 사용할 키를 지정하는 기능을 잃어 버렸습니다. 나는 그 과정이 어떻게 작동하는지 너무 확신하지 못하지만, 나는 행동과 형식에 소금 값을 설정한다고 말할 수 있기 전에. 조치가 게시물을 승인하려면 값이 일치해야합니다. 이제 소금 값을 어떻게 정하니? 나는 그것이 AntiForgeryConfig AdditionalDataProvider와 관련이 있다고 생각하지만 AntiForgeryConfig AdditionalDataProvider를 사용하는 방법에 대해 인터넷 검색을 찾을 수 없다. 도와주세요.
감사 매개 변수가 불필요하며 추가적인 보호를 제공하지 않았다, 그래서 우리는 대한 지원을 제거 소금을 설정
자세한 오류 메시지가 표시됩니까? "이 메서드는 대신 사용되지 않으므로 AntiForgeryToken() 메서드를 대신 사용하십시오. 토큰 내에 포함 할 사용자 지정 데이터를 지정하려면 정적 AntiForgeryConfig.AdditionalDataProvider 속성을 사용하십시오." –
예, 세부적인 오류 메시지를 보았습니다. AntiForgeryConfig.AdditionalDataProvider 속성은 어떻게 사용합니까? 이전처럼 행동에 속성을 더 이상 사용할 수 없습니까? AntiForgeryConfig.AdditionalDataProvider 속성을 googleing 할 때별로 보이지 않습니다. –