2014-09-15 7 views
0

최근 MVC3 사이트를 MVC4로 업그레이드했습니다. 준비가되면 최대 5 단계로 늘어났습니다. 이제는 갑작스런 Visual Studio 2013 [업데이트 3]이 있습니다. 오류 목록에 많은 수의 "오류"가 발생하지만 빌드를 깨뜨릴 수는 없지만 모든 곳에서 실제 오류를 찾아내는 것은 어렵습니다.ASP.NET 특성은 ASP.NET 파일에서만 허용됩니다.

<table ID="myNiftyTable" runat="server" style="vertical-align:top; width:600px"> 

등의 태그는 모두 "ASP.NET 특성은 ASP.NET 파일에서만 허용됩니다."라는 오류 메시지를 제공합니다. runat = "server"속성 때문에.

우리는 그래서 위의 요소가 이전에 나는, 난 그냥 모든 runat="server" 속성을 제거 할 수 있어야

<asp:Table ID="myNiftyTable" runat="server" Width="600px" HorizontalAlign="Left"> 

처럼 보였다 .cshtml 면도기로 이전 .ASPX 뷰를 변환하는 몇 가지 스크립트 도구를 사용했다? 새 웹 응용 프로그램은 VS 디버그에서 정상적으로 실행되는 것으로 보입니다. 그러나 모든 페이지를 철저히 테스트하지 않았습니다 & 컨트롤러 메서드는 아직 무언가를 깨뜨린 경우에 대비하고 싶습니다.

답변

2

runat = "서버"는 Webforms에서만 필요합니다. 그것은 MVC 3 응용 프로그램 중 하나가되어서는 안됩니다. 당신은 분명히 그들에 대한 모든 언급을 제거해야합니다.

Find & 프로젝트에서 모든보기간에 바꾸기가 어렵지 않게이 작업을 수행 할 수 있어야합니다.

1

예 당신은 제거 할 수/제거해야합니다.

table에 임의의 name="value" 속성을 추가 한 것처럼 runat="server"이 HTML 속성으로 렌더링됩니다. 그것은 더하고 아무것도하지 않습니다.

어디서나 runat="server"을 사용하면 웹 사이트가 손상되지 않지만 면도기가있는 ASP.NET MVC보기에는 코드 숨김이 없으므로 아무런 도움이되지 않습니다.

간단한 replace-all을 사용하면 문제를 신속하게 해결할 수 있습니다.