2013-03-08 4 views
0

이 문제에 대한 도움을 찾으려는 시도가 완전히 새로운 것입니다. VB.NET에서 ressources, books 및 samples vor MVC 4가 완전히 부족합니다. 나는 경험에 의한 배움 (벽에 머리를 두드리는 것과 관련된 느낌)을 선택하거나 그것을 포기하고 C# alltogether로 이동하는 것 중에서 선택해야합니다.MVC 4 VB 추가보기 데이터

형제 자매와 동일한 지원을 기꺼이 제공하지 않으려는 경우 회사에서 제품을 배송해야합니다. 그들은 MVC에 대한 VB를 완전히 삭제하거나 우리에게 그것을 배울 수있는 방법을 제공해야합니다.

그런 식으로, 여기 제 질문이 있습니다. 이 줄은

@Html.EditorFor(Function(x) x.UsersData(temp).Roles(Role)) 

멋진 코드 줄입니다. 놀라운 일들. 하지만 클래스를 추가하면 어떻게하면 CSS 파일의 스타일을 변경할 수 있습니까?

@Html.EditorFor(Function(x) x.UsersData(temp).Roles(Role), New With {.class = "users-manage-check-box"}) 

하지만 그렇지 않은 것을 추측 :

음,이 트릭을해야 할 것 같다. 이제까지. 결과는 같습니다.

무엇이 잘못되었으며 어떻게 해결할 수 있습니까?

솔직히 말해서, 나는 해결책을 찾았다. 나를 더럽게 느끼게하는 하나.

해당 코드의 출력을 보면 상자 클래스가 "선택란"임을 알 수 있습니다.

@html.Raw(Html.EditorFor(Function(x) x.UsersData(temp).Roles(Role), New With {.class = "users-manage-textbox"}).ToHtmlString.Replace("check-box", "user-manage-checkbox")) 

이 잘못 느낌 :

그래서 제가 해왔 던 것은 이것이다. 틀렸어. 그리고 그것은 슬픈 코드 일뿐만 아니라 보안 위험을 야기합니다. 솔루션이 개발 단계에서 벗어나기 전에 해결해야 할 것입니다.

추가보기 데이터가 제대로 작동하지 않는 이유에 대한 단서가 있습니까? 내가 뭔가 잘못 됐어? 너무 많이 묻는거야?

고맙습니다.

답변

0

EditorFor가 허용하지 않는다고 생각합니다. 따라서 직접 사용자 정의 편집기 템플리트를 작성해야합니다.

사용자 정의 템플릿을 in this blog post

업데이트를 만드는 방법에 대한 자세한 내용을보실 수 있습니다 :

이 의도적으로 설계된 동작입니다 http://aspnetwebstack.codeplex.com/

에서이 문제에 대한 답을 살펴보십시오. 당신이 호출

과부하가 additionalViewData (http://msdn.microsoft.com/en-us/library/ff406462)라는 개체의 매개 변수를 받아들입니다. EditorFor의 기본 구현은이 값을 무시합니다. 정보에 액세스 할 수있는 사용자 정의 편집기 템플릿을 작성해야합니다.

+0

그러나 책과 샘플 모두 제대로 작동한다고합니다.나는 몇몇 책을 인용 할 수는 있지만 정말로 잘못된 것을 얻지 않는 한 그것은 그들이 말한 것입니다 : html 태그의 클래스를 설정하기 위해 새로운 {@ class = "class-you-want}"를 전달하십시오. 그 @ 트릭 C#. – RSinohara

+0

내가 제공 한 블로그가 AdditionalData를 다른 용도로 사용하고 있다고 믿지만 태그의 클래스를 설정하는 것은 완전히 잘못되지 않았다면 다시 사용할 수 있습니다. – RSinohara