2011-11-11 4 views
8

안녕하세요, Url.Action 메서드를 사용하는 데 어려움을 겪고 있습니다. 아래 코드를 참조하십시오. 무엇이 잘못 되었습니까? ...?MVC & Url.Action

<a href='<%: @Url.Action("Edit", "Student", 
    new { id = item.DealPostID }) %>'>Hello   </a> 

StudentStudentControllerEdit이다 (내가 MVC 면도기를 사용하고있어) ActionResult 방법이다.

+0

직면 한 어려움에 대해 더 분명하게 말할 수 있습니까? 페이지에 오류가 표시됩니까? href가 당신이 예상하는 방식으로 채워지지 않습니까? – mjwills

+0

죄송합니다. Hello 링크를 클릭하면 아무데도 가지 않으므로 href가 작동하지 않습니다. @ Html.ActionLink ("Edit", "Edit", new {id = item.DealPostID})와 유사하게하려고합니다. Url.Action을 사용하기 때문에 나중에 hello 텍스트 대신 이미지를 넣을 수 있습니다. 내가 뭘 하려는지 이해가되기를 바랍니다. 감사합니다 – Ben

답변

18

면도기보기에서 <%: %>을 제거하십시오. 그것들은 WebForms 태그입니다.

<a href='@Url.Action("Edit", "Student", 
    new { id = item.DealPostID })'>Hello   </a> 
+1

굉장하고 일했습니다. 너 언제 <%: %>을 사용해야하고 언제 그렇지 않으면 설명해 줄 수 있니? – Ben

+3

사용중인 뷰 엔진과 관련이 있습니다. <% : 구문은 WebForms 뷰 엔진 용이며 인라인 코드에 대한 구문이 다른 Razor보기 엔진을 사용하고 있습니다. 따라서 면도기 MVC 프로젝트가 있다면 그 구문을 절대 사용하지 않을 것입니다. –

+0

설명해 주셔서 감사합니다. – Ben

5

이 시도 :

@Html.ActionLink("Hello", "Edit", "Student", new { id = item.DealPostID }, null) 
  • 인수 1 : 링크 텍스트
  • 인수 2 : 액션 이름
  • 인수 3 : 컨트롤러 이름
  • 인수 4 : 경로는
  • 인수 (5) 값 : HtmlAttributes. URL에 "? Length ="가 추가되지 않도록 null로 설정됩니다.

그게 효과가있다.

+0

이 링크에 이미지를 사용하려는 경우 HtmlAttributes에 대해 "null"대신 요소의 배경 이미지를 설정하는 CSS 클래스를 만듭니다. 인수를 사용하여 "새로운 {@class ="your_css_class "}. –

+0

내가 appologies, 내가 이전에 내가 링크 대신 이미지를 넣어야한다고 언급 했어야, 이것이 Url.Action 메소드를 사용하려고하는 이유입니다. Ben

+0

아무런 문제가 없지만 위의 내 의견에 따르면,이를 달성하는 가장 쉬운 방법은 배경 이미지를 설정하는 CSS 클래스를 만든 다음 해당 CSS 클래스를이 링크에 적용하는 것입니다. 그걸로. 도와 줘요! –

관련 문제