<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>HeeJae's Blog : Web application project</title><link>http://blogs.msdn.com/heejaechang/archive/tags/Web+application+project/default.aspx</link><description>Tags: Web application project</description><dc:language>ko-KR</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Visual Studio 2005 SP1 에 새로 추가 되는 기능 Web Application Project</title><link>http://blogs.msdn.com/heejaechang/archive/2006/08/23/visual-studio-2005-sp1-web-application-project.aspx</link><pubDate>Wed, 23 Aug 2006 10:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:713825</guid><dc:creator>HeeJae Chang</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/heejaechang/comments/713825.aspx</comments><wfw:commentRss>http://blogs.msdn.com/heejaechang/commentrss.aspx?PostID=713825</wfw:commentRss><wfw:comment>http://blogs.msdn.com/heejaechang/rsscomments.aspx?PostID=713825</wfw:comment><description>&lt;P&gt;Visual Studio 2005 가 릴리지 된지 어언.... 어언... 하여간 좀 됐다. VS 2005 가 릴리즈 된후에 가장 많이 받은 feedback 중 하나가 VS 2005에서 새로 바뀐 웹 프로젝트 방식이 기존 2003 방식과 너무 달라 2003에서 2005로 Migrate 하기가 힘들다는 거였다&lt;/P&gt;
&lt;P&gt;소위 Web Site Project 라 불리는 이 새로운 방식은 일반적인 VS project system을 사용하지 않고 php나 asp 처럼 on-demand로 각 페이지를 컴파일 하고 서비스 하는 방법인데, 그 나름의 사용상의 편의점이나 이점이 있다.&lt;/P&gt;
&lt;P&gt;문제는 WSP가 WAP 보다 낫다 나쁘다가 아니라,&amp;nbsp;이 새로운 WSP를 채용하면서 기존의 WAP - Web Application Project의 지원을 아예 안 함으로써 기존 WAP 형태로 많은 코드를 이미 보유 하고 있는 기업/사람들로 하여금 VS 2005를 사용하기 위해선 기존 WAP을 WSP로 무조건 바꾸게 하는것이 문제 였다.&lt;/P&gt;
&lt;P&gt;하여간 많은 분들이 이 점을 지적하자 VS 2005가 발표된 이후 Venus team 에서 Add-in 형식으로 VS 2005에서 2003과 같은 WAP 형태의 웹 프로젝트를 사용 가능 하게 하는 AddIn을 발표 하였다.&lt;/P&gt;
&lt;P&gt;이번 VS 2005 SP1에서 이 Add-in 형식으로 발표된 기능을 SP1에 집어 넣기로 했다. 다시 말해 SP1 부터 WAP 을 지원하기로 한거다&lt;/P&gt;
&lt;P&gt;여기 까지는 우리 팀이 아닌 Venus 팀의 일이라 나도 자세히 모른다 더 자세한 정보는 Venus team의 blog를 읽어 보기 바란다.&lt;/P&gt;
&lt;P&gt;하여간, 이렇게 SP1에 부터 web application project 형태의 웹 프로젝트를 지원하기로 함으로써 우리 C# IDE 팀도 WAP 형태의 프로젝트에 맞게 몇가지 수정을 해야 하는데. 현재 아직 어떻게 할지 결정이 안난 상태다.&lt;/P&gt;
&lt;P&gt;일단 문제가 무엇이냐면. 이 새로운 WAP 에서는 aspx 파일에 &amp;lt;script&amp;gt;&amp;lt;/script&amp;gt; 불록 안에 들어 있는 코드에 대해 몇가지 지원 되지 않는 기능이 있다.&lt;/P&gt;
&lt;P&gt;첫째는 aspx 파일 안에는 Find All reference가 작동 하지 않게 된다, 두번째는 rename refactoring 기능이 작동하지 않게 된다. 세번째는 Go to Definition이 소스 파일로 가는게 아니라 메타 데이타로 가게 된다.&lt;/P&gt;
&lt;P&gt;이유는 WAP 시스템이 내부적으로 작동하는 방식 때문인데 알다 시피 WAP은 VS 2003 버젼에서 쓰던 시스템이고 그때 까지는 모든 reference가 metadata reference 였다. 다시 말해 솔루션 안에 2개의 C# 프로젝트 간에 reference를 추가 하더라도 이건 project to project의 reference가 아닌, project to metadata reference 였다.&lt;/P&gt;
&lt;P&gt;이번 2005에 들어가면서 새로 도입된 기능이 project to project 기능인데, 이 기능이 들어 가면서 사용자가 다른 project에서 정의 된 타입에 대해 go to definition을 하게 되면 자동으로 그 소스 파일을 열어 IDE에 보여줄수 있게 된거다.&lt;/P&gt;
&lt;P&gt;하지만 이 WAP은 여전히 VS 2003 형태의 시스템을 사용하게 됨으로써, code behind 파일이 metadata reference로 aspx 파일에 전달 되게 되고, 이렇게 됨으로써 위에 말한 여러 기능들을 사용할수 없게 되는거다.&lt;/P&gt;
&lt;P&gt;VS 2003과 비교해서 더 나뻐지는건 없지만 VS 2005에 새로 들어간 여러 가지 기능들을 쓸수 없게 된다.&lt;/P&gt;
&lt;P&gt;어떻게 결론 날진 모르겠지만, 하여간 몇가지 안되는 기능들이 있더라도, &amp;nbsp;WAP 형태로 웹을 쓰시고 싶으신 분들은 SP1 을 이용하시면 2003과 똑같은 작업 환경을 이용하실수 있을꺼 같다.&lt;/P&gt;
&lt;P&gt;수고...&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=713825" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/heejaechang/archive/tags/visual+studio/default.aspx">visual studio</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/VS/default.aspx">VS</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/IDE/default.aspx">IDE</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/C_2300_+2.0/default.aspx">C# 2.0</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/WAP/default.aspx">WAP</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/Web+application+project/default.aspx">Web application project</category><category domain="http://blogs.msdn.com/heejaechang/archive/tags/2005/default.aspx">2005</category></item></channel></rss>