이것NET Stacks#14: NuGet 변경, EF Core 중 다대다, 커뮤니티 요약 보기 등!

21668 단어 dotnet

이것은 내가 매주 시사 통신하는 인터넷판이다.NET Stacks, 시사통신 출시 일주일 후 온라인 출시Subscribe today 지금 확인하십시오!
월요일 잘 보내세요.당신은 일찍이 있었습니까?
이번 주, 우리는:
  • EF Core 중 다대다에 대한 흥분
  • 현재와 미래의 NuGet 변경 내용 보기
  • 지역사회 입주
  • EF Core 5의 다중 쌍


    그래서 흥분된다. 다대다 지원은 현재 실체 프레임워크의 핵심인 일상적인 구축과 팀에 포함되어 있다.
    이 작업의 상당 부분은 네비게이션을 건너뛰거나 다중 네비게이션 속성에 대한 개념을 포함한다.예를 들어 여기에 뉴스 원고에 링크를 분배하는 기본 모델이 하나 있다. (내가 무슨 말을 할 수 있겠는가, 이것은 내 머릿속에 신선하다.) 이것은 GitHub 문제에서... heavily inspired and/or outright stolen:
    public class Link
    {
        public int LinkId { get; set; }
        public string Url { get; set; }
        public string Description { get; set; }
    
        public List<LinkTag> LinkTags { get; set; }
    }
    
    public class Tag
    {
        public string TagId { get; set; }
        public string Description { get; set; }
    
        public List<LinkTag> LinkTags { get; set; }
    }
    
    public class LinkTag
    {
        public int LinkId { get; set; }
        public Link Link { get; set; }
    
        public string TagId { get; set; }
        public Tag Tag { get; set; }
    
        public DateTime LinkCreated { get; set; }
    }
    
    
    따라서 링크와 태그를 로드하려면 두 개의 탐색 속성을 사용하고 질의를 수행할 때 연결 테이블을 참조해야 합니다.
    var linksAndTags
        = context.Links
            .Include(e => e.LinkTags)
            .ThenInclude(e => e.Tag)
            .ToList();
    
    
    EF Core 5의 다중 쌍이 있으면 연결 테이블을 건너뛰고 직접 탐색 속성을 사용할 수 있습니다.반대로 우리는 좀 더 직접적으로 할 수 있다.
    public class Link
    {
        public int LinkId { get; set; }
        public string Description { get; set; }
    
        public List<Tag> Tags { get; set; } // Skips right to Tag
        public List<LinkTag> LinkTags { get; set; }
    }
    
    public class Tag
    {
        public string TagId { get; set; }
        public string Description { get; set; }
    
        public List<Link> Links { get; set; } // Skips right to Link
        public List<LinkTag> LinkTags { get; set; }
    }
    
    
    지금 조회가 얼마나 쉬운지 봅시다.
    var linksAndTags 
        = context.Links
            .Include(e => e.Tags)
            .ToList();
    
    
    스탠딩 강연에서 Arthur Vickers는 방출 시간이 비슷하지만 EF Core 5가 꼭 필요한 것은 아니라는 중요한 사실을 언급했다.순액그것의 목표.NET 표준 2.1은 모든 용도로 사용할 수 있습니다.NET Core 3.x 개의 응용 프로그램 (물론.NET 5에서도 사용할 수 있습니다.)자세한 내용은 the docs 를 참조하십시오.NET 표준 호환성.

    NuGet 변경 내용 체크 인 중


    이번 주.NET 도구 커뮤니티는 일어나서 그들이 무엇을 하고 있는지 토론했다.Nuget에 대한 UX 향상 세 가지 핵심 사항을 언급했습니다.org, Visual Studio의 패키지 호환성을 개선하고 패키지 작성자에게 더 좋은 자술 지원을 제공합니다.
    팀은 nuget의 체험을 개선하기 위해 노력해 왔다.지난 몇 주 동안 그들은 블로그에 어떻게 하는지use advanced searchview dependent packages에 대해 발표했다.IDE에서 패키지를 사용하는 것을 더 좋아하지만 nuget을 눌러도 됩니다.org는 더 좋은 보기를 얻을 수 있지만, 소음을 걸러내기는 매우 어렵다.새로운 필터 옵션은 환영할 만한 개선입니다. 의존항, 도구, 템플릿, 관련성, 다운로드, 사전 발표를 통해 필터를 할 수 있습니다.내가 안정성을 중시하든 새로운 사물을 발견하든 현재의 체험은 훨씬 좋다.
    내가 가장 흥미를 느끼는 것은 도구 지원에 관한 소식을 듣는 것이다. 왜냐하면 이것은 우리 대다수 사람들이 NuGet을 사용하는 방식이기 때문이다.팀은 부동 버전 지원에 대한 변경 사항을 논의했다.부동 버전 지원은 지정된 범위의 최신 버전을 사용하고 있음을 의미합니다. 예를 들어 패키지 버전 2.* 을 원하고 1.0, 2.02.1 버전이 출시되면 2.1 을 사용하고 있습니다.곧 프로젝트 파일에서 해킹을 방지하기 위해 NuGet UI의 Version 필드에서 이 점을 지정할 수 있습니다.전체적으로 Version 필드는 드롭다운 목록뿐만 아니라 더 큰 유연성을 허용할 것이다.
    마지막으로, NuGet 패키지를 작성하면 자술한 링크는 더 이상 패키지 뒤에 업로드되지 않고 Visual Studio 패키지 속성에 직접 구축됩니다.이것은nuget에 쉽게 패키지 문서를 가질 수 있도록 합니다.org 및 Visual Studio의 NuGet UI에 대한 링크가 있습니다.

    🌎 지난주에인터넷 세계


    🔥 3위

  • 마테 미첼does a deep dive on how .NET builds and ships.
  • Jeremy Liknessinspects and mutates IQueryable expression trees.
  • 매튜 존스uses conditional C# LINQ clauses to make a multiple-input search engine.
  • 📢 공고

  • 필립 카트is looking for feedback on the .NET project system in Visual Studio.
  • 조인 그랜트talks about the August release of the Azure SDKs와 육강호shows us what’s new in the Azure Identity release.
  • Azure Cosmos DB serverlessis now in preview.
  • 현재 가능view dependent packages on nuget.org.
  • AWS SDK for.NET v3.5is generally available.
  • Mads Kristensenannounces his new stream, where he writes or updates Visual Studio extensions.
  • 📅 커뮤니티 및 활동

  • .NET 문서가 표시됩니다.
  • 이번 주에 우리는 세 차례의 지역사회 스탠딩 경기를 거행했다.NET 도구, 솔리드 프레임워크 및 ASP순액
  • 😎 브라조


    존 힐튼compares Blazor and Vue, 그리고works with client-side Blazor.

    🚀 .순핵심

  • Tomasz Pęczeksupports encrypted content encoding in .NET Core.
  • 코드 미로 블로그works with IncludeMembers and custom projections with AutoMapper in ASP.NET Core,discusses how to implement SignalR automatic reconnect with Angularadds gRPC to an ASP.NET Core project and MongoDB.
  • Gunnar Peipmanlogs NHibernate SQL to ASP.NET Core loggers.
  • Damien Bowdenworks through symmetric and asymmetric encryption in .NET Core.
  • 앤드류 로크controls the IHostedService execution order in ASP.NET Core 3.x.
  • ErikEJmaps and uses SQL Server stored procedures with EF Core Power Toolsuses SQL Server Compact 4 with .NET Core 3.1 on Windows.
  • ⛅ 구름

  • Matias Quarantaworks with HttpClientFactory in the Azure Cosmos DB .NET SDK.
  • Azure 커뮤니티 블로그에서 a look at Dapr.
  • Will Velida.
  • 도미닉 세인트 아만드uses path-based routing in Azure Application Gateway with Azure WebApps.
  • Damien Bowdensecures Azure Functions using API keys.
  • Jason Farrellkeeps going on Azure Durable Functions, with approving the upload.
  • Daniel Krzyczkowskiuses event sourcing with Azure Cosmos SB change feed and Azure Functions.
  • 📔 언어 문자

  • 토마스 클로디스 슈버talks about top-level statements in C# 9.
  • Anthony Girettimakes options immutable in ASP.NET Core 5 and C# 9looks at native-sized integers in C# 9.
  • Khalid Abuhakmehuses the select drop-down in ASP.NET Razor.
  • 로렌 위그르트creates a thumbnail for video and image files in C#.
  • Gunnar Peipmanuses Structuremap in legacy ASP.NET MVC apps.
  • 🔧 도구

  • 트레프 샐리번works with Visual Studio Code and Error Lens.
  • 매튜 맥도널드 토론the design patterns programmers really use.
  • 데이브 브로크(응)takes a look at Project Tye for microservices development.
  • Mathankumar Rajendrandevelops an ASP.NET Core app using VS Code.
  • 마크 시만unit testing is fine이 말했다.
  • 비니시우스 아폴리나리오extracts a web app from IIS to create a new container image.
  • 라미형마discusses the top 10 open source NuGet tools for .NET development.
  • 📱 사마린

  • 제임스 몬트마노talks about app first run detection with Xamarin.Essentials.
  • Matthew Leibowitzworks through templated controls.
  • 조나슨 페퍼스profiles Xamarin.Android startup.
  • David Britchconnects to localhost over HTTPS for (Xamarin) Android release builds.
  • 제시 리버티walks through the MonkeyCache library.
  • 🎤 팟캐스트

  • 개발자 Tea4 things you have to leave behind as a beginning engineer에 있습니다.
  • 팟캐스트에서 스택이 넘쳐흐르며 물었다. should managers of developers ever make technical decisions?.
  • .NET Rocks PodCasttalks with Philip Carter about F#.
  • Azure DevOps PodCasttalks to Brady Gaster about SignalR and more.
  • 블록 팟캐스트 인코딩keeps working on the DevOps Handbook, talking about anticipating problems.
  • 6자리 개발자 팟캐스트talks about BlazorCMS and SpeakerMeet.
  • 무교조 팟캐스트talks to Mads Torgersen about C# 9.
  • 🎥 비디오

  • 을 엽니다.NET Showadds a little Swagger to OData.
  • 데이터 노출improves query performance by managing statistics in Azure SQL.
  • Xamarin 전시회.
  • 브라이언 라구나스asks whether to use ConfigureAwait True or False.
  • 좋은 웹페이지 즐겨찾기