길을 잃었어요.ASP에 무슨 일이 있었습니까?NET MVC 5?
저는 다양한 프로젝트에 몰두해 왔고 마이크로소프트는 몇 가지 큰 변화를 일으키느라 바빴고 그것은 저를 혼란스럽게 합니다.ASP.NET Core는 작년에 Visual Studio 2017을 설치하고 새 프로젝트를 만들러 갔다가 갑자기 을 선택하게 되었습니다.NET Framework , .NET 표준 및 .NET 코어.그래서 저는 그것들을 조금 들여다보았고, 후자의 두 가지는 어떤 면에서 전체 프레임워크의 축약된 버전이라는 것을 알게 되었습니다.저는 Scott Hanselman ASP의 이 게시물을 읽었습니다.NET 5가 사망했습니다 - ASP를 소개합니다.NET Core 1.0 및 .또한 NET Core 1.0은 ASP에서 벗어나도록 유도했습니다.NET Core: ASP 중 하나를 선택합니다.NET 및 ASP.NET 코어.저는 "핵심은 새로운 것이므로 전체 프레임워크를 계속 사용해도 좋습니다."라고 말했습니다.그래서 저는 새로운 ASP를 만들었습니다.를 사용하는 NET MVC 사이트.NET Framework 4.6.2 및 마이크로소프트.AsNet.Mvc 5.2.3.
그 프로젝트를 만든 후 MVC와 Entity Framework 모두에서 버그로 보이는 것을 발견했지만 웹에서 버그에 대한 언급은 Core에 있는 것으로 보이며 이 버그가 수정되는 유일한 장소라는 것을 알게 되었습니다.
오늘은 시스템에서 설명서를 찾아보려고 합니다.웹.MVC.컨트롤러 및 시스템.웹.MVC.JsonResult는 Core 문서를 제외하고는 삭제되었습니다.여기서 드디어 파냈는데, 더 이상 유지보수가 안 된다고 되어 있나요?
저는 코어에 대해 이 정도는 이해했고 "좋아요, 제가 왜 신경써야 하나요?저는 제가 하고 있는 일을 계속하고 그것이 끝나면 다시 확인할 것입니다."하지만 이제 4.6.2는 더 이상 지원되지 않는 것 같습니다.누가 무슨 일인지 설명해 줄 수 있나요?NET 4.6.2/MVC 5.2.3 프로젝트를 다 쓰기도 전에 이제는 쓸모가 없습니까?그렇지 않다면, 왜 문서가 폐기되고 숨겨졌습니까?일부 종속성이 Core에 대해 사용할 수 없거나 호환되지 않을까 걱정됩니다.
(이 답변은 새로 작성될 때마다 정기적으로 업데이트됩니다.NET 발표가 있고, ASP의 세부사항으로 업데이트 되었습니다.NET Core 3.0, .NET 3 및 .NET 5)
마이크로소프트는 지난 3년간 5년간의 혼란에 대해 충분한 타격이 필요합니다.NET Core / DNX, ASP.NET Core, .NET 표준, .NET 5와 나머지.
(그리고 내 말은 데브디브의 전직 FTESE로서...("hi from building 16!"))
- ASP.NET 일명 "System"입니다.웹"이(가) 사라졌습니다.웹 양식이 중지되었습니다(만세!).
- 2008년에 출시된 ASP.NET MVC는 ASP 위에 구축되었습니다.NET, 그러나 대부분의 WebForms 인프라를 우회했습니다.
- ASP.NET MVC에는 ASP와 별도로 자체 버전이 있습니다.NET 및 ASP.NET 웹 API(및 ASP).NET Core).ASP에 연결했습니다.NET MVC 5의 설명서 - 이것은 ASP와 동일한 것이 아닙니다.NET 5.
- 2012년에 출시된 ASP.NET 웹 API는 ASP의 형제입니다.ASP 위에 구축했다는 점에서 NET MVC.NET도 그렇지만 자체 클래스 라이브러리가 있었습니다.
System.Web.Http) ASP와 공유하지 않았습니다.NET MVC(System.Web.Mvc). ASP는 다음과 같습니다.ASP가 있는 NET 웹 API 서비스입니다.같은 프로젝트의 NET MVC 웹 애플리케이션은 고통스러운 연습입니다. - ASP.NET MVC 5는 ASP의 업데이트로 2014년에 출시되었습니다.NET MVC 4.이것은 ASP와 관련이 없습니다.NET 5.
- 저는 ASP를 주목합니다.NET MVC 5는 우리가 네임스페이스와 네임스페이스를 모두 가지고 있는 곳이었는데, 이것은 혼란스럽습니다.다행히도 이것은 짧은 기간 동안 지속되었고 오늘날 관련이 없습니다.
- ASP.NET MVC 6은 출시되지 않았습니다.ASP에 포함되었습니다.그 후 ASP가 된 NET 5.NET 코어.그것의 목표는 ASP를 결합하는 것이었습니다.NET MVC 및 ASP.NET 웹 API를 단일 플랫폼으로 통합합니다.
- ASP.NET Core는 ASP의 개선된 디자인으로 2016년에 출시되었습니다.NET MVC 5 그러나 의존성 없음
System.Web.dll(현재 이전 요청 파이프라인, "IIS " (" "IIS " "),IHttpHandler그리고.IHttpModule더 이상 존재하지 않음).- ASP에 유의하십시오.NET Core의 클래스 라이브러리의 루트 네임스페이스는 다음과 같습니다.
Microsoft.AspNet그리고 아닌System.Web이것은 저에게 혼란의 근원이었습니다.즉, ASP에서 프로젝트를 업그레이드합니다.NET MVC 및 ASP.NET WebAPI에서 ASP로.컨트롤러와 미들웨어의 기본 아키텍처가 동일함에도 불구하고 NET Core는 단순하지 않습니다.
- ASP에 유의하십시오.NET Core의 클래스 라이브러리의 루트 네임스페이스는 다음과 같습니다.
- .NET Core는 CLR 및 BCL의 새로운 버전으로, Windows, Linux 및 MacOS에서 실행됩니다.
- .NET Core 1.0 및 .NET Core 2.0의 기본 클래스 라이브러리는 전체 지방에 비해 빈혈로 간주되었습니다.윈도우즈 전용 NET Framework입니다.
- .NET Core 3.0 및 WinForms, WPF 및 의 기타 구성 요소의 오픈 소스를 사용합니다.NET Framework , .NET Core는 이제 의 대체 제품으로 준비되었습니다.새로운 애플리케이션 개발을 위한 윈도우즈의 NET Framework.
- .NET 5는 의 새 이름이 될 것입니다.다음 NET 코어.NET Core 3 출시(.NET 5는 2020년 말경으로 예상됩니다.
- .NET 5는 ASP와 전혀 관련이 없습니다.NET 5.0 또는 ASP.NET MVC 5.
- 없습니다.NET Core 4 또는 .NET Framework 5.0.
- "ASP.NET Core in.NET"이 ASP의 첫 번째 출시의 최종 이름인 것 같습니다.NET Core가 특별히 목표로 하고 있습니다.NET 5 이상.
"Core"는 Microsoft의 최신 세대를 위한 최신 브랜드입니다.와 함께 작동하는 NET 플랫폼NET Core(즉, Windows 종속성이 없으므로 휴대용)1990년대에 마이크로소프트가 COM 또는 ActiveX를 사용할 때 "Active"를 사용했던 것과 마찬가지로 Active Desktop, Active Channels, ActiMates, Active Directory, ActiveSync 등을 사용했습니다.
- 또한 Entity Framework Core는 Entity Framework 6의 기능이 아직 많이 부족합니다. 이는 기본적으로 재작성이기 때문이지만 결국에는 동등성에 도달할 것이기 때문입니다.
많기 때문에.현재 사용 가능한 NET 런타임 및 BCL(.NET Framework , .마이크로소프트는 NET Core, UWP, Xamarin(Mono 사용), Unity 등을 소개했습니다.NET 표준은 기본적으로 포터블 클래스 라이브러리 개념의 리부트이다: 비주얼 스튜디오 프로젝트는 특정 구현 대신 알려진 공통 기능의 하위 집합을 대상으로 한다.(나는 그들이 버전 번호를 4부터 맞춰주기를 바랄 뿐이다.NET Framework는 1.0에서 시작하는 대신 2001년에 대해 다시 생각하게 해주었습니다.) - 하지만 중요한 부분은 ASP입니다.NET Core 1 및 ASP.NET Core 2 대상입니다.. 대신 NET 표준.NET Core - ASP를 의미합니다.NET Core는 위에서 실행됩니다.Windows에서 NET Framework를 실행할 수 있습니다.NET Core도 마찬가지입니다.
저는 이전의 모든 것을 주목합니다.NET 크로스 플랫폼 호환성 기술은 이제 더 이상 사용되지 않습니다(Compact Framework 하위 집합, Portable Class Libraries 및 Visual Studio의 "공유 프로젝트"를 대상으로 함).와 같이 더 이상 존재하지 않는 NET.NET Compact Framework, XNA, Silverlight 및 Windows Phone 7의 하위 집합입니다.
2019년 5월, 마이크로소프트는 ""를 발표했습니다.NET 5." 한마디로.NET Framework가 로 대체되고 있습니다.NET Core 및 의 다음 버전.다음 NET 코어.NET Core 3.0의 이름이 지정됩니다.NET 5). 이 발표는 ASP와 관련이 없습니다.NET Core를 제외하고는.NET 5는 ASP를 완전히 지원합니다.실행 중인 NET Core 3.0 애플리케이션.
한2020년 여름을 마무리했습니다.NET 5 및 ASP.NET. ASP2020년 10월 기준 ASP.NET Core의 NuGet 패키지 버전이 3.1.x에서 5.0.0으로 뛰어올랐기 때문에 ASP의 다음 주요 릴리스처럼 보입니다.은 NET Core입니다.5.x.x'ASP'라는 이름으로 발매됐음을 시사하는 바는NET Core 5"는 최근 마이크로소프트 블로그 기사에서 "ASP"로 이름을 지정했습니다.NET Core for .NET 5" - 이 전체 스레드가 "ASP"에 대한 혼란에서 생성되었음을 감안할 때.NET MVC 5" vs "ASP".NET 5" "ASP" 중 하나로 명명할 것입니다.NET Core 5" 또는 "ASP".NET Core for .NET 5"는 전혀 혼란스럽지 않을 것입니다, 선생님-이밥이 아닙니다!
요약:
- ASP.NET MVC 5:
- ASP.NET MVC 5는 ASP의 짧은 기간 동안 계승되었습니다.NET MVC 4.
- ASP와 함께 출시되었습니다.2014년 NET Web API 2.
- 실제로 ASP 위에서 실행되었습니다.NET 4(즉,NET 4.x 버전의
System.Web.dll). 전체 ASP를 참고합니다.NET MVC 라이브러리는 이제 더 이상 사용되지 않습니다.
- ASP.NET 5는 EOL이 되어 ASP로 브랜드가 변경되었습니다.NET Core는 "ASP"의 기능을 포함하고 있습니다.NET MVC 5" 내장.
- ASP.NET Core 1 및 ASP.NET Core 2는 다음 중 하나에서 실행할 수 있습니다.NET Core(크로스 플랫폼) 또는 .대상이 되기 때문에 NET Framework(윈도우즈).NET 표준.
- ASP.NET Core 3은 이제 에서만 실행됩니다.NET Core 3.0.
- ASP.NET Core 4는 존재하지 않으며 존재하지도 않습니다.
- ASP.NET Core 5는 존재하지만(2020년 8월 기준) 공식 명칭은 "ASP"로 보입니다.NET Core for .NET 5"만 실행됩니다.NET 5.
모든 항목(시간순):
- ASP.NET 1 - 2001.포함된 웹 양식입니다.계속.NET Framework 1.0 및 1.1.
System.Web.dll. - ASP.NET 2.0 - 2005.포함된 웹 양식입니다.계속.NET Framework 2.0.
System.Web.dll. - ASP.NET MVC 1 및 ASP.NET MVC 2 - 2008-2009.ASP 위에서 실행되었습니다.NET 2.0.
System.Web.Mvc.dll. - ASP.NET 4.0 - 2010.포함된 웹 양식입니다.계속.NET Framework 4.0.ASP가 없었습니다.NET 3.0.
System.Web.dll. - ASP.NET MVC 3 및 ASP.NET MVC 4 - 2010-2013.ASP 위에서 실행되었습니다.NET 4.0.
System.Web.Mvc.dll. - ASP.NET Web API 1 - 2012.ASP 위에서 실행되었습니다.NET 4.0.
System.Web.Http.dll. - ASP.NET MVC 5 - 2013.ASP에 대한 또 다른 업데이트입니다.NET MVC. ASP 위에서 실행됨.NET 4.0을 사용하지 않고도 독립적으로 실행할 수 있습니다.
System.Web.dll오윈 치하에 - ASP.NET Web API 2 - 2013.ASP의 형제자매입니다.NET MVC 5. ASP 없이도 실행할 수 있습니다.OWIN 아래의 NET 4.0.
- ASP.NET MVC 6 - 2014-2015.Release Candidate 상태에 도달한 후 중단되었으며 ASP로 재부팅되었습니다.ASP의 MVC 및 Web API 구성요소인 2016년 NET Core MVC 1.0NET 코어 1.
- ASP.NET 5 - 2014.ASP의 주요 재부팅.여기에 설명된 NET.주요 변경 사항으로는 MVC, 웹 페이지 및 웹 API의 병합과 웹 양식의 제거가 포함되었습니다.ASP.NET 5는 Release Candidate 상태에 도달했지만 ASP로 브랜드가 변경되었습니다.NET 코어.ASP가 존재한 적이 없습니다.NET 6.
- ASP.NET Core 1 - 2016.둘 중 하나에서 실행됩니다.NET Framework 4.5 또는 .NET Core 1.0.
- .NET Core - 2016.휴대성과 최소성.NET 런타임 및 클래스 라이브러리.
- .NET 표준 - 2017.프로그램이 모두에 존재할 공통 기능 집합을 대상으로 하는 방법입니다.NET 구현(.NET Framework 4.5 이상, .NET Core 2.0 이상, Xamarin 등).
- ASP.NET Core 2 - 2017-2018: 현재 우리가 있는 곳.둘 중 하나에서 실행됩니다.NET Framework 4.6.1 또는 .NET Core 2.0. (2018년 말 현재 ASP가 있습니다.NET Core 2.1).
- ASP.NET Core 3 - 2018년 10월 말 마이크로소프트는 ASP를 발표했습니다.NET Core 3.0은 이제 다가오는 버전에서만 실행됩니다.NET Core 3.0(따라서 에서 더 이상 실행되지 않습니다.NET Framework 4.7.x).이것은 ASP에서 업그레이드 경로가 없다는 것을 의미하기 때문에 논란이 많은 조치입니다.NET Core 2.x에서 ASP로.에서 실행되는 애플리케이션용 NET Core 3.x.지원하지 않는 종속성 때문에 NET Framework 4.7.x.NET Core는 아직 없습니다.NET 표준 3.0.
- .NET 5 - 2019년 5월: 마이크로소프트는 의 다음 버전을 발표했습니다.다음 NET 코어.NET Core 3.1은 "라고 부르지 않습니다.NET Core 4.0" 또는 ".".NET Core 5.0"이지만 버전 번호 5.0으로 뛰어올라 "Core" 브랜드를 포기했습니다.NET 5.0".
- ASP.NET Core 3.0 on.NET 5 - 2019년 5월 발표.NET 5, 마이크로소프트도 ASP를 언급했습니다.NET Core 3.0 응용 프로그램은 에서 실행됩니다.NET 5. ASP 여부는 현재 불분명합니다.NET Core 2.x 응용 프로그램은 에서 수정 없이 실행될 수 있습니다.NET 5.
- ASP.NET Core vNext on.NET 5 - 2020년 8월: 의 출시가 임박함에 따라.NET 5, Microsoft는 ASP용 NuGet 패키지의 버전 번호를 변경했습니다.NET Core to .Microsoft는 아직 이 새로운 ASP 릴리스를 공식적으로/공식적으로 참조하지 않았습니다.NET Core를 "ASP"로 지정합니다.NET Core 5"이지만, 저는 그것이 기정사실이라고 생각합니다.
- ASP.NET Core for .NET 5 2020년 9월의 더 최근 블로그 기사는 Microsoft가 ASP의 다음 버전을 언급하고 있음을 시사합니다.NET Core를 "ASP"로 지정합니다.NET Core for .NET 5" (네, 그것은 입에 발린 말입니다 - 적어도 이전 이름만큼 모호하지는 않습니다.)
- 업데이트(2021년 9월):이제 정식 명칭은 ASP인 것 같습니다.NET Core in .NET 5 및 의 경우.NET 6 그들은 ASP와 함께 간 것 같습니다.NET Core in .NET 6도.
타임라인 및 블록 다이어그램
(이걸 만드느라 정신이 없었어요...)
이 답변은 ASP에만 초점을 맞추려고 할 것입니다.NET MVC 5, 그리고 ASP만큼.가능한 NET Core.
제품 라이프사이클
Microsoft는 여전히 이를 지원합니다(따라서 다행스럽게도 다른 답변의 "단기간" 릴리스는 아닙니다). 그리고 아직 수명이 다한 발표는 없습니다.
프레임워크/제품 폐기
ASP.NET MVC 4 2019년 7월 1일
ASP.NET MVC 5
따라서 원하는 경우 계속 사용할 수 있습니다(예: Microsoft에서 여전히 지원하는 VB6 및 기존 ASP 사용자).
제품 수명 주기에 대한 마이크로소프트 설명서를 확인하는 경우에도 .NET Framework 4.5.2 이상은 여전히 완전히 지원됩니다.
유지
그러나 ASP에 주목해야 합니다.NET MVC 5는 거의 모든 개발 리소스가 ASP에 있기 때문에 유지 보수 모드에 있습니다.NET Core 지금.
너도 알잖아,
- NuGet.org 에서 예측할 수 없는 패치 릴리스.
관련 NuGet 패키지를 모니터링하는 경우 최근에도 Microsoft에서 보안 취약성 등을 해결하기 위해 패키지를 업데이트합니다.
- 문서가 잠겼습니다.
Microsoft Docs에서 본 공지 사항은 사실 첫 번째 문장인 "우리는 더 이상 이 콘텐츠를 정기적으로 업데이트하지 않습니다."를 강조합니다.ASP로서 완벽하게 말이 되는군요.NET MVC 5는 견고하기 때문에 더 이상 새로운 재료가 추가될 것이라고 기대해서는 안 됩니다.
- 매우 제한적인 버그 수정 및 새로운 기능.
당신은 "그 프로젝트를 만든 후 MVC와 Entity Framework 모두에서 버그로 보이는 것을 발견했지만 웹에서 버그에 대한 언급은 Core에 있는 것으로 보이며 이 버그가 수정되는 유일한 장소라는 것을 알게 되었습니다."라고 말했습니다.
글쎄요, 그것은 정말로 여러분이 말하는 "벌레"에 달려있습니다.앞서 말씀드린 것처럼 보안 관련 문제는 여전히 패치가 적용되고 있지만, 해결 방법이나 기능적 한계가 있는 버그는 수정될 가능성이 가장 낮습니다.이것은 오픈 소스 프로젝트이기 때문에, 당신이 정말 원한다면, 마지막 수단으로 당신 스스로 문제를 해결할 수 있습니다.
새로운 기능 측면에서 Microsoft는 ASP의 일부 기능을 백포트합니다.NET Core(예: 종속성 주입, 새로운 구성 시스템)를 통해 마이그레이션을 어느 정도 단순화할 수 있습니다.하지만 큰 기대는 하지 마세요.
마이그레이션
ASP로의 마이그레이션을 고려합니다.가능하다면 NET Core.
저는 위키백과의 이 기사의 도입부에서 나온 이 부분이 선택된 답변으로 여기에 제공된 훌륭한 답변의 훌륭한 요약이라는 것을 알게 되었습니다.이 Microsoft의 블로그 게시물 https://devblogs.microsoft.com/dotnet/introducing-net-5/ 에서도 동일한 내용이 시작되었습니다.
(가능하면 언급된 모든 기술을 위키백과 자체 기사에 연결하여 추가로 읽도록 하겠습니다.)
ASP의 최종 릴리스.NET MVC: 2018년 11월 28일.이후 ASP.NET Core가 릴리스되었으며 이를 통해 ASP가 통합되었습니다.NET, ASP.NET MVC, ASP.NET 웹 API 및 ASP.NET 웹 페이지(레이저 페이지만 사용하는 플랫폼).MVC 6는 Core로 인해 포기되어 출시되지 않을 것으로 예상됩니다.코어는 현재 "로 병합할 계획입니다.NET 5".
언급URL : https://stackoverflow.com/questions/51390971/im-lost-what-happened-to-asp-net-mvc-5
'source' 카테고리의 다른 글
| TemplateRef!(NgIf ->TemplateRef) 제공자가 없습니다. (0) | 2023.04.27 |
|---|---|
| Install-Module : 'Install-Module' 용어가 cmdlet의 이름으로 인식되지 않습니다. (0) | 2023.04.27 |
| python을 사용하여 XLSX를 CSV로 올바르게 변환 (0) | 2023.04.27 |
| ngFor와 함께 trackBy를 사용하는 방법 (0) | 2023.04.27 |
| vba 함수의 최대 문자열 크기를 사용하시겠습니까? (0) | 2023.04.22 |
