Programing

Razor View Engine : 표현식 트리에 동적 작업이 포함되어 있지 않을 수 있습니다

crosscheck 2020. 6. 2. 22:12
반응형

Razor View Engine : 표현식 트리에 동적 작업이 포함되어 있지 않을 수 있습니다


나는 이것과 비슷한 모델을 가지고있다 :

public class SampleModel
{
     public Product Product { get; set; } 
}

그리고 내 컨트롤러에서 인쇄하려고하는 예외가 발생합니다.

@Html.TextBoxFor(p => p.Product.Name)

이것은 오류입니다.

Exception: An expression tree may not contain a dynamic operation

누구 든지이 문제를 해결하는 방법에 대한 단서를 줄 수 있다면 정말 감사하겠습니다!


당신이 타이핑하지 않은 견해를 가지고있는 것 같습니다. 기본적으로 MVC3 RC의 면도기보기는로 입력됩니다 dynamic. 그러나 람다는 동적 멤버를 지원하지 않습니다. 모델을 강력하게 입력해야합니다. 보기 파일 상단에 추가

@model SampleModel

이 원인의 일반적인 오류는 추가 할 때입니다.

@Model SampleModel

대신 페이지 상단에

@model SampleModel

링크에서 @model에 대한 설명은 발췌 부분을 참조하십시오.

@model(소문자 "m")은 Razor보기에서 예약 된 키워드로서보기 맨 위에 모델 유형을 선언합니다. 네임 스페이스도 넣었습니다. 예 :@model MyNamespace.Models.MyModel

파일에서 나중에 원하는 속성을 참조 할 수 있습니다 @Model.Attribute(대문자 "M").


보기가 입력 된 것 같습니다 dynamic. 뷰에서 올바른 유형을 설정하면 오류가 사라지는 것을 볼 수 있습니다.


이 줄을 사용하기 전에 (html 도우미를 강력하게 입력하십시오)

@Html.TextBoxFor(p => p.Product.Name)

강력한 유형을 보려면 모델을 페이지에 포함시켜야합니다.

@model SampleModel

이 오류는 @model 대신 @@ model이 있었기 때문에 발생했습니다 ... 내 경우에는 복사 및 붙여 넣기 오류가 발생했습니다. @model로 변경하면 문제가 해결되었습니다.

참고 URL : https://stackoverflow.com/questions/4155392/razor-view-engine-an-expression-tree-may-not-contain-a-dynamic-operation

반응형