Aspnetcore: โฑ๏ธ ํด๋ฆญ ์œ ๋„ ๋ฌธ์•ˆ : ASP.NET Core์˜ ๋ฏธ๋ž˜๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋„์›€

์— ๋งŒ๋“  2020๋…„ 10์›” 06์ผ  ยท  89์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: dotnet/aspnetcore

์•ˆ๋…•ํ•˜์„ธ์š”. ๋“ค๋Ÿฌ ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” .NET 6 ๊ณ„ํš์— ์ ๊ทน์ ์œผ๋กœ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์ด์— ๋Œ€ํ•œ ๊ท€ํ•˜์˜ ๋„์›€์„ ๋ฐ”๋ž๋‹ˆ๋‹ค.
๋‹ค์Œ ๋ช‡ ์ฃผ ๋™์•ˆ ๋ฐฑ ๋กœ๊ทธ์˜ ๋ชจ๋“  ๋ฌธ์ œ๋ฅผ ์Šค์บ”ํ•˜๊ณ  .NET 6์˜ ํ›„๋ณด๋ฅผ ์‹๋ณ„ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ํ–ฅํ›„ ๋ฆด๋ฆฌ์Šค์— ์ ํ•ฉํ•œ ํ›„๋ณด์ธ์ง€ ์•„๋‹Œ์ง€ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด upvotes ๐Ÿ‘ (๋ฐ ๊ธฐํƒ€ ๋ฐ˜์‘). ์ปค๋ฎค๋‹ˆํ‹ฐ์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๋ฌธ์ œ์˜ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์ •ํ•˜๋Š” ๋ฐ ๋„์›€์ด๋˜๋„๋ก ํ•ด๊ฒฐํ•˜๋ ค๋Š” ๋ฌธ์ œ๋ฅผ ์ฐพ์•„์„œ ์ฐฌ์„ฑํ‘œ๋ฅผ ๋ณด๋‚ด์ฃผ์„ธ์š”.

โš ๏ธ ์ด๋ฒˆ ํ˜ธ์— ๋Œ“๊ธ€๋กœ๋ณด๊ณ  ์‹ถ์€ ๋‚ด์šฉ์„ ์ถ”๊ฐ€ํ•˜์ง€ ๋งˆ์„ธ์š”.

call to action

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

ํŽธ์ง‘๊ธฐ ๋ฐ ๋””๋ฒ„๊ฑฐ ๊ฐœ์„  ๋ฐ Hot Reload (ํŽธ์ง‘ ๋ฐ ๊ณ„์†) : https://github.com/dotnet/aspnetcore/issues/5456

๋ชจ๋“  89 ๋Œ“๊ธ€

Blazor์˜ SVG ์ง€์› https://github.com/dotnet/aspnetcore/issues/18271

Blazor WASM์˜ HTML ์ž๋™ ์ดˆ์  ์ง€์›

IIS Express์ฒ˜๋Ÿผ Kestrel์„ ์‚ฌ์šฉํ•˜์—ฌ ์ €์žฅ์‹œ Projet ๋‹ค์‹œ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

26091 ๊ธฐ๋ณธ์ ์œผ๋กœ ์••์ถ• ๋ฆฌ์†Œ์Šค ๋‹ค์šด๋กœ๋“œ

์‹คํ—˜์˜ MobileBlazorbindings๋Š” ์ข‹์€ ๋ฐ˜์‘์„ ์–ป์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ ํ•œ ๋นจ๋ฆฌ Microsoft์˜ ๊ณต์‹ ํ”„๋กœ์ ํŠธ๊ฐ€๋˜์–ด ์™„์ „ํ•œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ž์‹ ์˜ ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง, ํŠนํžˆ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ์ „์ž๋ฅผ ๋Šฅ๊ฐ€ ํ•  ๊ธฐํšŒ๊ฐ€์žˆ๋Š” ๊ฒƒ ๊ฐ™๊ณ , ๋” ์œ ์„ ํ˜•์ด์ง€๋งŒ ๋” ๊ฐ•๋ ฅํ•ฉ๋‹ˆ๋‹ค.

ํŽธ์ง‘๊ธฐ ๋ฐ ๋””๋ฒ„๊ฑฐ ๊ฐœ์„  ๋ฐ Hot Reload (ํŽธ์ง‘ ๋ฐ ๊ณ„์†) : https://github.com/dotnet/aspnetcore/issues/5456

11558

MVC์— ๋Œ€ํ•œ ์ŠคํŠธ๋ฆฌ๋ฐ API ์ง€์›
์˜ˆ : https://github.com/dotnet/aspnetcore/issues/4833#issuecomment -298857229

public class MyStreamingApi : Controller
{
     [HttpGet("/tweets")]
     [Streaming]
     public async IAsyncEnumerable<Tweet> Get()
     {
         while (var tweet = await GetOneTweet())
         { 
             yield return tweet;
         }
     }
}

์ด ๋ชจ๋“  ๊ฒƒ์ด ํ›Œ๋ฅญํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ๋ฌธ์ œ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๊ด€๋ จ ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ฐฌ์„ฑ ํˆฌํ‘œ๋ฅผํ•˜์„ธ์š”. ๊ทธ๊ฒƒ์ด ์šฐ๋ฆฌ๊ฐ€ ๊ฒฐ๊ตญ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@mkArtakMSFT # 11558์ด ์ž ๊ฒจ์žˆ์–ด ํˆฌํ‘œ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ ์š”์ฒญ : Drop-in component for ASP Identity Administration, Portals, UI, SSO, Claims, AD-Sync, Token, Multi.Tenant Management Visual Studio ํ…œํ”Œ๋ฆฟ์— ์ƒ์—…์šฉ ๋ผ์ด์„ ์Šค ํƒ€์‚ฌ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Œ).

๋‚˜๋Š” ๋ช‡ ๋…„ ๋™์•ˆ๋ณด๊ณ  / ๊ธฐ๋‹ค๋ ธ๋‹ค. ์ฐธ์„์„ฑ์žˆ๊ฒŒ ์ตœ๊ทผ์˜ ์ผ๋ถ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ์š”์ฒญํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค .Microsoft๋Š” ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•˜์—ฌ ๊ฐ€๊ฒฉ ์ค‘ ์ผ๋ถ€๋Š” ๋ฐฉ๊ธ€๋ผ๋ฐ์‹œ, ๋ฒ ํŠธ๋‚จ, ์ธ๋„, ํ•„๋ฆฌํ•€ ๋“ฑ์˜ ๊ฐœ๋ฐœ์ž 10 ~ 15 ๋ช…์˜ ๊ธ‰์—ฌ์™€ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๋ฐ ๊ธฐ๋ณธ ์š”๊ตฌ ์‚ฌํ•ญ์ด์ง€๋งŒ ๋งค์šฐ ๋ณต์žกํ•˜๊ณ  ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

Java, PHP Stacks ๋“ฑ๊ณผ๋Š” ๋‹ฌ๋ฆฌ .NET ๋„ค์ดํ‹ฐ๋ธŒ ๋“œ๋กญ ์ธ ์†”๋ฃจ์…˜์—๋Š” ๊ณต๋ฐฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ ์›ํ™œํ•˜๊ฒŒ ํ™œ์šฉํ•˜๋Š” ID ๊ด€๋ฆฌ ๋ฐ ๊ด€๋ฆฌ ํ”„๋ ˆ์ž„ ์›Œํฌ ์˜ต์…˜ (์˜ˆ : J2EE Pluggable Identity)์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋งŽ์ด ๋–จ์–ด์ง‘๋‹ˆ๋‹ค. ๊ด€๋ฆฌ ํ”„๋ ˆ์ž„ ์›Œํฌ ๋˜๋Š” JSR 168 ๋˜๋Š” JSR 286 ๋˜๋Š” JSR-351 ๋˜๋Š” JSR-375.

์ด๊ฒƒ์ด ์™œ ์ค‘์š”ํ•œ๊ฐ€์š”? Java ๋˜๋Š” PHP๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์Šคํƒ์—์„œ ์‰ฝ๊ณ  ๋ช…ํ™•ํ•˜๋ฉฐ ํ•ต์‹ฌ์ ์ธ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ JSR 168 ๋˜๋Š” JSR 286 ๋˜๋Š” JSR-351 ๋˜๋Š” JSR-375 ๋ฉ€ํ‹ฐ ํ…Œ๋„ŒํŠธ, ๊ทธ๋ฃน ๋Œ€ ์—ญํ•  ๋˜๋Š” ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. .NET, ๋ชจ๋ฐ”์ผ ์žฅ์น˜, ํฌํ„ธ์€ ๋ชจ๋‘ IBM, SalesForce, Oracle ๋˜๋Š” Red Hat ๋“ฑ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ณด์•ˆ ์ˆ˜์ •๊ณผ ์›ํ™œํ•˜๊ณ  ์ผ๊ด€๋˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์ฆ‰์‹œ ์ƒ์‚ฐ์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

.Net์—์„œ๋Š” ์ง€์›์ด ๋ฌดํšจํ™”๋˜๊ฑฐ๋‚˜ ๋งค์šฐ ์ œํ•œ์ ์ด๋ฉฐ ASP ์•ฑ์˜ ์ง„์ž… ๋ฐ ์ฑ„ํƒ์— ๋Œ€ํ•œ ์žฅ๋ฒฝ์œผ๋กœ ํ•ญ์ƒ ํƒ€์‚ฌ ์กฐํ•ฉ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” Microsoft ์ „๋ฌธ๊ฐ€์˜์ฃผ์˜๊ฐ€ ํ•„์š”ํ•œ ๊ฐœ๋ฐœ์ž ๋ฐ ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ์—๊ฒŒ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์˜ˆ : ์šฐ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ์œ„ํ•œ OSS๊ฐ€ ์•„๋‹Œ ๊ฐœ์ธ ์ •๋ณด ๊ณต์œ  ์‚ฌ์ดํŠธ๋ฅผ ๊ฑฐ์˜ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค (์›ํ•˜๋Š” ๊ฒฝ์šฐ ์ง€๋ถˆ). ์›น ์–‘์‹์œผ๋กœ ์‹œ์ž‘ํ–ˆ์„ ๋•Œ Simple Membership, the Identity, Identity 2 ASP MVC ์œ„์— ๋งŽ์€ ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ .NET Core๋กœ ์˜ฎ๊ฒผ์„ ๋•Œ๋Š” ๋˜ ๋‹ค๋ฅธ ๋…ธ๋ ฅ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์™ธ์—๋„ ๋‚ด๋ถ€ ๊ฐœ๋…๊ณผ ๊ทธ๊ฒƒ์ด ์ƒˆ๋กœ์šด ๊ฒƒ์„ ์˜๋ฏธํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•ด ๋งŽ์€ ํ˜ผ๋ž€์ด์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์—ญํ• , ํด๋ ˆ์ž„, ํŽ˜๋”๋ ˆ์ด์…˜, SAML, SAML 2.0, Open ID 2.

์›ํ•˜๋Š” ์†”๋ฃจ์…˜์„ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค.

  • ๋“œ๋กญ ์ธ์€ ASP ID ์—์ฝ” ์‹œ์Šคํ…œ, ๊ด€๋ฆฌ, UI, SSO, ํ† ํฐ, ๋‹ค์ค‘ ํ…Œ๋„ŒํŠธ ๊ด€๋ฆฌ๋ฅผ ์ง€์›ํ•˜๋Š” ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ผœ๋Š” ๊ตฌ์„ฑ ์„น์…˜์ž…๋‹ˆ๋‹ค.
  • VS ํ…œํ”Œ๋ฆฟ์— ํฌํ•จ (Identity Server ์ œ๊ฑฐ, ๊ธฐ๋ณธ MS ์˜ต์…˜ ์‚ฌ์šฉ ๋“ฑ)
  • Allow-Easy AD Active Directory ํ†ตํ•ฉ
  • User Defined/Created Fields UDF ๊ด€๋ฆฌ์ž ์ˆ˜์ค€ ์ง€์›์—์„œ.
  • ํ˜„์žฌ ์˜ต์…˜๊ณผ ๊ฐ€๊ฒฉ ์ฑ…์ •์œผ๋กœ ์ธํ•ด ๊ด‘๋ฒ”์œ„ํ•œ ์žฌ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ MS ํ”„๋ ˆ์ž„ ์›Œํฌ๋ฅผ ์™„์ „ํžˆ ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ ๋„ .NET ์Šคํƒ์—์„œ ๊ณ„์† ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์กด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒ๋‹น์ˆ˜๊ฐ€ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.
  • @tbonham ๋‹น SAML2 / CAS
  • ํ…Œ๋„ŒํŠธ ์—”ํ„ฐํ‹ฐ์— ๋Œ€ํ•œ ํ…œํ”Œ๋ฆฟ ์˜ต์…˜ Configuration.MultiTenancy.IsEnabled = true; ์ „์—ญ ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ ํ—ˆ์šฉ

ํ•˜์ด ํƒ€์ž„ MS๋Š”์ด ํ•ต์‹ฌ ๊ฒŒ์ดํŠธ ์œ ์ง€ ๊ธฐ๋Šฅ์„ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค !!

  • [] ์ปจํŠธ๋กค๋Ÿฌ / API DDOS throttling ์ง€์›
  • [] Login Controller / API Captcha Anti Spambot ์ง€์›
  • [] ์‹œ๊ฐ„ ์ดˆ๊ณผ๋Š” Singal-R์„ ์‚ฌ์šฉํ•˜์—ฌ ์‰ฝ๊ฒŒ ์ „๋‹ฌ๋˜๋ฉฐ ์ต๋ช… ์—ฐ๊ฒฐ์„ ๊ฐ•์ œ๋กœ ๋Š์„ ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค.
  • [] ๊ณต๊ฐœ ์›น ์‚ฌ์ดํŠธ์—์„œ ์ต๋ช… ์ฑ„ํŒ…์„ ์ฒ˜๋ฆฌ ํ•  ๋ฐฉ๋ฒ•์ด ์—†์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด _ ์›น ์‚ฌ์šฉ์ž๊ฐ€ SignalR์„ ์‚ฌ์šฉํ•˜์—ฌ ASP ์›น ์‚ฌ์ดํŠธ์—์„œ ์ œํ’ˆ / ์ฑ„ํŒ…์— ๋Œ€ํ•œ ๋„์›€๋ง ๋˜๋Š” FAQ๋ฅผ ์„œํ•‘ / ๋ธŒ๋ผ์šฐ์ง•ํ•˜๋Š” ๊ฒฝ์šฐ์ด๋ฅผ์œ„ํ•œ ๋•ํŠธ ํ…Œ์ดํ”„ ์†”๋ฃจ์…˜์„ ๋งŒ๋“ค์–ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ฑ„ํŒ… ์ŠคํŠธ๋ฆผ / ์„ธ์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด ๊ณ ์œ ํ•˜๊ฒŒ ์‹๋ณ„ ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์ด ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š๋Š” ํ•œ.

@mkArtakMSFT # 11558์ด ์ž ๊ฒจ์žˆ์–ด ํˆฌํ‘œ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

@expcat ๋‹ค์‹œ ์—ด์—ˆ์Šต๋‹ˆ๋‹ค!

@papyr ๊ด€๋ จ ๋ฌธ์ œ์— ๋Œ€ํ•ด

๊ธฐ๋ณธ ์ œ๊ณต ๊ด€๋ฆฌ์ž ํŒจ๋„ ํ…œํ”Œ๋ฆฟ ๋ฐ Vue ํ†ตํ•ฉ.

@mrkarMSFT ์•„์ด๋””์–ด์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค ๐Ÿ‘ ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ ๋‚ด ๊ธฐ๋Šฅ ์š”์ฒญ์„ ๊ณ„์† ๋‹ซ๊ณ  ์ž ๊ทธ๊ธฐ ๋•Œ๋ฌธ์— ์ฐฌ์„ฑ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค!

๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ํˆฌํ‘œ๋ฅผ ํ—ˆ์šฉ ํ•˜๋ ค๋ฉด 26594์˜ ์ž ๊ธˆ์„ ํ•ด์ œ ํ•ด์ฃผ์„ธ์š”!

๊ธฐ๋ณธ ์ œ๊ณต ๊ด€๋ฆฌ์ž ํŒจ๋„ ํ…œํ”Œ๋ฆฟ ๋ฐ Vue ํ†ตํ•ฉ.

Skoruba.Admin๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ https://github.com/dotnet/aspnetcore/issues/26594 upvote๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๊นŒ?

SignalR ์šฉ RFC 7692 (๋ฉ”์‹œ์ง€ ๋‹น WebSocket ์••์ถ•). ์ด๊ฒƒ์€ runtime # 20004 ์— ์˜์กดํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ์ด ๋งฅ๋ฝ์—์„œ ๊ด€๋ จ์ด์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ์–ธ๊ธ‰ํ•˜๋Š” ์˜ค๋ž˜๋œ ๋ฌธ์ œ ๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ ์ง€๊ธˆ์€ ๋‹ซํžˆ๊ณ  ์—ฌ๊ธฐ์—์„œ ๋™๋“ฑํ•œ ์—ด๋ฆฐ ๋ฌธ์ œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ ์‚ฌ๋žŒ๋“ค์ด ๋Ÿฐํƒ€์ž„ ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ฐฌ์„ฑ ํˆฌํ‘œ๋ฅผ ํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ๊ฐ€์—†๋Š” blazor wasm-to-wasm interop (WASI) [https://github.com/WebAssembly/interface-types/blob/master/proposals/interface-types/Explainer.md]

blazor wasm๋กœ๋“œ ์ง„ํ–‰๋ฅ , ์ง„ํ–‰๋ฅ  ํ‘œ์‹œ ์ค„ ๋ฐ / ๋˜๋Š” ํ˜„์žฌ ๋‹ค์šด๋กœ๋“œ์ค‘์ธ ํŒŒ์ผ ์ด๋ฆ„์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ํ™˜๊ฒฝ์„ ๊ฐœ์„  ํ•  ์ˆ˜์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜์‹ญ์‹œ์˜ค.

๋น ๋ฅธ ์‹œ์ž‘ / ์˜ˆ์ œ๋กœ ๋น ๋ฅธ (๊ตฌ์„ฑ ์š”์†Œ)์„ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋กœ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋กœ์ ํŠธ ํ…œํ”Œ๋ฆฟ blazor ์„œ๋ฒ„ / wasm

sftp์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•˜์‹ญ์‹œ์˜ค

"์ œ์•ˆ : ๊ตฌ์„ฑ ์š”์†Œ ์Šฌ๋กฏ๋ณด๊ธฐ"๊ฐ€ ์ž ๊ฒจ ์žˆ์Šต๋‹ˆ๋‹ค.

ํƒœ๊ทธ ๋„์šฐ๋ฏธ๋ฅผ ํ†ตํ•ด ๋ Œ๋”๋ง ๋  ๋•Œ ๋ฏธ๋ฆฌ ์ •์˜ ๋œ ์œ„์น˜์—์„œ๋ณด๊ธฐ ๊ตฌ์„ฑ ์š”์†Œ์˜๋ณด๊ธฐ ํ…œํ”Œ๋ฆฟ์— ์‚ฝ์ž… ํ•  ์ˆ˜์žˆ๋Š” ์‚ฌ์šฉ์ž ์ œ๊ณต ํ•˜์œ„ ์ฝ˜ํ…์ธ ๋ฅผ ๋ Œ๋”๋งํ•˜๊ธฐ ์œ„ํ•ด๋ณด๊ธฐ ๊ตฌ์„ฑ ์š”์†Œ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ์ œ๊ณต ๋˜๋Š” ๊ธฐํƒ€ ํ”„๋ ˆ์ž„ ์›Œํฌ ์ œ๊ณต ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

https://github.com/dotnet/aspnetcore/issues/4901

์‚ฌ๋‚ด (Microsoft ์ œ์ž‘) ID ์„œ๋ฒ„ ๋ฐ ๊ธฐํƒ€ ๋ณด์•ˆ ๋ชจ๋“ˆ

์ผ๋ฐ˜์ ์œผ๋กœ blazor๋ฅผ ์–ธ๊ธ‰ํ•˜์ง€ ์•Š๋Š” ๋น ๋ฅธ ๊ฐœ๋ฐœ ๋ฃจํ”„์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ „์ฒด ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ํ›จ์”ฌ ๋นจ๋ผ ์กŒ์œผ๋ฉดํ•ฉ๋‹ˆ๋‹ค.

๋Œ“๊ธ€์ด ๋น„ํ™œ์„ฑํ™” ๋œ ์ƒํƒœ์—์„œ ์ƒˆ๋กœ์šด ํด๋ฆญ ์œ ๋„ ๋ฌธ์•ˆ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์€ ์ƒ๊ฐ์ผ๊นŒ์š”?
์•ˆ๋…•ํ•˜์„ธ์š”.

@mrpmorris @mkArtakMSFT ์ „์ฒด ํด๋ฆญ ์œ ๋„ ๋ฌธ์•ˆ์„ ํฌ๊ธฐํ•˜๋Š” ๊ฒƒ์„ ์ง„์ง€ํ•˜๊ฒŒ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ ํˆฌํ‘œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ๋ฌธ์ œ๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๋” ์ด์ƒ MS ์ œํ’ˆ ํ”ผ๋“œ๋ฐฑ / ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๋ฅผ ๋‚จ๊ธฐ์ง€ ์•Š๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์†Œ์…œ ํŒ”๋กœ์–ด๊ฐ€ ์—†๊ฑฐ๋‚˜ ๋ฌธ์ œ๋ฅผ ์ฐฌ์„ฑ ํ•  ๋™๋ฃŒ๊ฐ€ ๋งŽ์ง€ ์•Š์œผ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์–ด ๊ฒฐ๊ตญ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

๋‚ด ์ œ์•ˆ์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜์žˆ๋Š” ์ฃผ์ œ / ์ผ๋ฐ˜์ ์ธ ๋ฐฉํ–ฅ์„ ์„ ํƒํ•˜๊ณ , ์‚ฌ๋žŒ๋“ค์ด ๊ทธ ์ค‘์—์„œ ์„ ํƒํ•˜๋„๋กํ•˜๊ณ , ํŠน์ • ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ตฌ์ฒด์ ์ธ ์•ฝ์†์„ํ•˜์ง€ ์•Š๊ณ  ์ „์ฒด ๋…ธ๋ ฅ์˜ ์ผ๋ถ€๋ฅผ ์•ˆ๋‚ดํ•˜๋„๋กํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ตฌ์†๋ ฅ์ด์—†๋Š” ์ž๋ฌธ ํˆฌํ‘œ์ž…๋‹ˆ๋‹ค. :)

@mrkarMSFT ์•„์ด๋””์–ด์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค ๐Ÿ‘ ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ ๋‚ด ๊ธฐ๋Šฅ ์š”์ฒญ์„ ๊ณ„์† ๋‹ซ๊ณ  ์ž ๊ทธ๊ธฐ ๋•Œ๋ฌธ์— ์ฐฌ์„ฑ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค!

๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ํˆฌํ‘œ๋ฅผ ํ—ˆ์šฉ ํ•˜๋ ค๋ฉด 26594์˜ ์ž ๊ธˆ์„ ํ•ด์ œ ํ•ด์ฃผ์„ธ์š”!

@papyr ์ด ๋ฌธ์ œ๋ฅผ ์กฐ์‚ฌ @blowdart ๊ฐ€ ๊ทธ ๋ฌธ์ œ๋ฅผ ์ข…๊ฒฐ ํ•œ ์ด์œ ์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ฐ์•ˆํ•  ๋•Œ .NET 6์— ๋Œ€ํ•ด ํ™•์‹คํžˆ ์šฐ์„  ์ˆœ์œ„๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์—†์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

@ 3GDXC ์œ„์— ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ ์š”์ฒญ์„ ๋‚˜์—ดํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ๋” ์ž˜ ์ถ”์  ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ฐ ๋ฌธ์ œ์— ๋Œ€ํ•ด ๋ณ„๋„์˜ ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.

๋Œ“๊ธ€์ด ๋น„ํ™œ์„ฑํ™” ๋œ ์ƒํƒœ์—์„œ ์ƒˆ๋กœ์šด ํด๋ฆญ ์œ ๋„ ๋ฌธ์•ˆ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ์ข‹์€ ์ƒ๊ฐ์ผ๊นŒ์š”?
์•ˆ๋…•ํ•˜์„ธ์š”.

๋‚˜๋Š” ์›๋ž˜ ๊ทธ๊ฒƒ์„ ๊ณ ๋ คํ•˜๊ณ  ์žˆ์—ˆ์ง€๋งŒ ์‚ฌ๋žŒ๋“ค์„ ์Œ์†Œ๊ฑฐํ•˜๊ณ  ์‹ถ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ณ„์†๋˜๋ฉด์ด ๋Œ€ํ™”๋ฅผ ์ž ๊ธ€ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@mrpmorris @mkArtakMSFT ์ „์ฒด ํด๋ฆญ ์œ ๋„ ๋ฌธ์•ˆ์„ ํฌ๊ธฐํ•˜๋Š” ๊ฒƒ์„ ์ง„์ง€ํ•˜๊ฒŒ ๊ณ ๋ คํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ ํˆฌํ‘œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ๋ฌธ์ œ๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ด ๋” ์ด์ƒ MS ์ œํ’ˆ ํ”ผ๋“œ๋ฐฑ / ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๋ฅผ ๋‚จ๊ธฐ์ง€ ์•Š๋Š” ์ด์œ ์ž…๋‹ˆ๋‹ค. ์†Œ์…œ ํŒ”๋กœ์–ด๊ฐ€ ์—†๊ฑฐ๋‚˜ ๋ฌธ์ œ๋ฅผ ์ฐฌ์„ฑ ํ•  ๋™๋ฃŒ๊ฐ€ ๋งŽ์ง€ ์•Š์œผ๋ฉด ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์–ด ๊ฒฐ๊ตญ ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

๋‚ด ์ œ์•ˆ์€ ํ”„๋กœ์ ํŠธ๊ฐ€ ์ด๋™ํ•  ์ˆ˜์žˆ๋Š” ์ฃผ์ œ / ์ผ๋ฐ˜์ ์ธ ๋ฐฉํ–ฅ์„ ์„ ํƒํ•˜๊ณ , ์‚ฌ๋žŒ๋“ค์ด ๊ทธ ์ค‘์—์„œ ์„ ํƒํ•˜๋„๋กํ•˜๊ณ , ํŠน์ • ๋ฌธ์ œ์— ๋Œ€ํ•œ ๊ตฌ์ฒด์ ์ธ ์•ฝ์†์„ํ•˜์ง€ ์•Š๊ณ  ์ „์ฒด ๋…ธ๋ ฅ์˜ ์ผ๋ถ€๋ฅผ ์•ˆ๋‚ดํ•˜๋„๋กํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

@mnmr ์šฐ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ๊ทธ๋“ค์ด ์›ํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ๋ชฉ์†Œ๋ฆฌ๋ฅผ

AoT ์ปดํŒŒ์ผ # 5466

๋ธŒ๋ผ์šฐ์ € ์ž‘์—… ๊ธฐ๋ฐ˜ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ์™€ ๊ฒฐํ•ฉ ๋œ AOT๋Š” JS๋ฅผ ํŒŒ๊ดดํ•ฉ๋‹ˆ๋‹ค.

.NET WebAssembly๋Š” ์ž‘์—… ๊ธฐ๋ฐ˜ ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
https://github.com/dotnet/runtime/issues/40619

์„ธ๋ถ€์ ์ธ ์˜ˆ์™ธ๋ฅผ ์ผœ๋Š” ๊ฒƒ๋งŒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํšŒ๋กœ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š” Blazor ์„œ๋ฒ„ ์•ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋””๋ฒ„๊น… ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์™„๋ฃŒ๋˜๋ฉด ๋” ๋‚˜์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. # 26705

์„ธ๋ถ€์ ์ธ ์˜ˆ์™ธ๋ฅผ ์ผœ๋Š” ๊ฒƒ๋งŒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํšŒ๋กœ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š” Blazor ์„œ๋ฒ„ ์•ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋””๋ฒ„๊น… ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์™„๋ฃŒ๋˜๋ฉด ๋” ๋‚˜์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

@anthcool์— ๋Œ€ํ•œ ๋ฌธ์ œ๋ฅผ

์„ธ๋ถ€์ ์ธ ์˜ˆ์™ธ๋ฅผ ์ผœ๋Š” ๊ฒƒ๋งŒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํšŒ๋กœ ์˜ค๋ฅ˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค๋Š” Blazor ์„œ๋ฒ„ ์•ฑ์„ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋””๋ฒ„๊น… ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์™„๋ฃŒ๋˜๋ฉด ๋” ๋‚˜์€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค.

@anthcool์— ๋Œ€ํ•œ ๋ฌธ์ œ๋ฅผ

๋ฐฉ๊ธˆ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌ!

Pub / Sub ๋˜๋Š” ์ ์–ด๋„ .NET ์ด๋ฒคํŠธ์— ๊ฐ€๊นŒ์šด ๊ธฐ๋Šฅ์„ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ์ •๋ง ์œ ์šฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ B (ํ•˜์œ„) ๋ฐ ์ปดํฌ๋„ŒํŠธ A (์ƒ์œ„)๋ฅผ ๊ฐ–๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์˜ค๋Š˜๋‚  ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ์ปดํฌ๋„ŒํŠธ C ... N (A์˜ ํ•˜์œ„๊ฐ€ ์•„๋‹˜)์— ์•Œ๋ฆฌ๋Š” ๊ฒƒ์€ ๊ทธ๋ ‡๊ฒŒ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์ ์œผ๋กœ๋Š” ํ•ดํ‚น์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋Š” ์ข…๊ฒฐ๋˜์—ˆ์ง€๋งŒ ์—ฌ์ „ํžˆ ํ•ด๊ฒฐ์ฑ… # 26450์ด ์—†์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ์™€ ์—ฌ๊ธฐ ์—์„œ๋„ ์–ธ๊ธ‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. .NET 5 RC1์ด ์ถœ์‹œ ๋œ ์ดํ›„ Blazor WASM์€ Azure์™€์˜ ์ž‘๋™์„ ์ค‘์ง€ํ–ˆ์Šต๋‹ˆ๋‹ค.

Pub / Sub ๋˜๋Š” ์ ์–ด๋„ .NET ์ด๋ฒคํŠธ์— ๊ฐ€๊นŒ์šด ๊ธฐ๋Šฅ์„ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ด ์ •๋ง ์œ ์šฉํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ปดํฌ๋„ŒํŠธ B (ํ•˜์œ„) ๋ฐ ์ปดํฌ๋„ŒํŠธ A (์ƒ์œ„)๋ฅผ ๊ฐ–๋Š” ๊ฒƒ๊ณผ ๊ฐ™์€ ์˜ค๋Š˜๋‚  ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ์ปดํฌ๋„ŒํŠธ C ... N (A์˜ ํ•˜์œ„๊ฐ€ ์•„๋‹˜)์— ์•Œ๋ฆฌ๋Š” ๊ฒƒ์€ ๊ทธ๋ ‡๊ฒŒ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ์ˆ ์ ์œผ๋กœ๋Š” ํ•ดํ‚น์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

@ ylr-research ๋Œ€ํ™”๋ฅผ ๊ณ„์†ํ•˜๋ ค๋ฉด ๋ณ„๋„์˜ ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜์‹ญ์‹œ์˜ค.

์ž๋™ ๋ชจ๋“ˆ ๋ถ„๋ฆฌ ๋ฐ ์ง€์—ฐ ๋กœ๋”ฉ.

์กฐ๊ฑด๋ถ€ ๋‹ซ๊ธฐ ๋ฐ ์—ด๊ธฐ ํƒœ๊ทธ https://github.com/dotnet/aspnetcore/issues/26368์„ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค

ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ HttpMessageHandler์˜ ๋ชจ๋“  ์†์„ฑ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ๋ˆ„๋ฝ ๋œ ์ฝ”๋“œ๊ฐ€ ๋งŽ๊ณ  ๋งŽ์€ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

26487 : ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์ž‘์—…์‹œ ํŠน์ • ํ…Œ์ŠคํŠธ ์‹œ์ž‘ ํด๋ž˜์Šค๋ฅผ ์ง์ ‘ ํ˜ธ์ถœํ•˜๋Š” ์ƒˆ๋กœ์šด WebHostFactory ์˜ต์…˜

Blazor wasm์—์„œ InMemoryCache ์‚ฌ์šฉ

์ฆ‰์‹œ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋„ˆ๊ฒŸ์—์„œ ๊ธฐ๋Šฅ ํด๋”๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ „ํ˜•์ ์ธ ์ง€์ €๋ถ„ํ•œ ๋Œ€์‹  :

์œ ํ˜•๋ณ„ ์ •๋ ฌ :

    CustomerController
    InvoiceController
    SmsController
    ...hundreds of files
Views
    CustomerUpdate.cshtml
    CustomerDelete.cshtml
    InvoiceView.cshtml
    SmsSend.cshtml
    ...hundreds of files

๋Œ€์‹  ๊ธฐ๋Šฅ๋ณ„๋กœ ์ •๋ ฌ :

    Sms
        ...relevant files here
    Customers
        ...relevant files here
    Invoice
        ...relevant files here

์ด๊ฒƒ์€ ASP.NET Core, .NET Core ์‚ฌ์šฉ ์—ฌ๋ถ€์— ๊ด€๊ณ„์—†์ด ๋ชจ๋“  ์ข…๋ฅ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์กฐํ™”ํ•˜๋Š” ๋” ๋…ผ๋ฆฌ์  ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—์„œ ์ž์„ธํžˆ ์•Œ์•„๋ณด์„ธ์š” : https://dev.to/jamesmh/the-life-changing-and-time-saving-magic-of-feature-focused-code-organization-1708

์ด๊ฒƒ์€ MVC, Razor Pages, Rest API์—์„œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

ASP.NET Core MVC-Razor-์ค‘์ฒฉ ๋ถ€๋ถ„ ๋ฐ ๋‹จ์ˆœ ๋ถ€๋ถ„ ์ž์‹ ์ฝ˜ํ…์ธ 

https://github.com/dotnet/aspnetcore/issues/24470

์ด์ „ Edge ์ง€์› (ํด๋ฆฌ ํ•„ ํฌํ•จ?)
https://github.com/dotnet/aspnetcore/issues/26475

์•ˆ๋…•ํ•˜์„ธ์š”. ์ƒ์œ„ ํ•˜์œ„ ๊ตฌ์„ฑ ์š”์†Œ์˜ ์บ์Šค์ผ€์ด๋“œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค.

๋„๊ตฌ ์ฒด์ธ์—์„œ ์ผ๋ฅ˜ ์‹œ๋ฏผ์œผ๋กœ์„œ์˜ SASS (๋ณ€์ˆ˜ ์ธ์‹, ๋ชจ๋“  ๊ฐ€์ ธ ์˜ค๊ธฐ์—์„œ ์ธํ…”๋ฆฌ ์„ผ์Šค ๋ฐ ์ปดํŒŒ์ผ)

ํด๋ผ์ด์–ธํŠธ์˜ ๋กœ์ปฌ ์ฃผ๋ณ€ ์žฅ์น˜ ๋ฐ .NET Core์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ํ†ตํ•ด ๋ฐ์Šคํฌํ†ฑ์—์„œ Blazor ์•ฑ์„ ํ˜ธ์ŠคํŒ…ํ•˜๊ธฐ์œ„ํ•œ ์ง์ ‘์ ์ธ ์ง€์›. WASM์€ ํ›Œ๋ฅญํ•˜์ง€๋งŒ ์ „์ฒด ๋ฐ์Šคํฌํ†ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด POS ๊ธฐ๋Šฅ๊ณผ ๊ฐ™์€ ๊ธฐ๋Šฅ์„ ๋กœ์ปฌ ์žฅ์น˜์— ํ›จ์”ฌ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

.Net ์ฝ”์–ด์— ๋Œ€ํ•ด ์–ธ์ œ ์ˆ˜์ •ํ• ์ง€ ํ™•์‹คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
https://github.com/dotnet/runtime/issues/29935

๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ. McKinnon์˜ ์ž‘์—…์„ ๋งˆ์น˜๋ฉด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค : https://github.com/dotnet/aspnetcore/issues/18754

๊ธฐ๋ฐ˜์•” ์„ ๋ฌผ : # 15005

์บ์Šค์ผ€์ด๋“œ ๊ตฌ์„ฑ ์š”์†Œ-์ž๋™์œผ๋กœ ์ƒ์œ„ ๊ตฌ์„ฑ ์š”์†Œ ๊ฐ์ง€

์ด์ƒ์ ์œผ๋กœ Azure ์„œ๋น„์Šค๋ฅผ ์ง€์›ํ•˜๋Š” HTTP / 3 (QUIC)์— ๋Œ€ํ•œ ๊ณต์‹ ์ง€์›;)

DLL ํฌ๊ธฐ๋ฅผ ์ค„์ด๊ณ  ์ข…์†์„ฑ์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

์ตœ๊ทผ ์ €๋ฅผ ๊ดด๋กญํžˆ๋Š” ํ•œ ๊ฐ€์ง€๋Š” ๋‹ค์šด๋กœ๋“œ ํฌ๊ธฐ๋ฅผ ์ค„์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. # 26780 ์ฐธ์กฐ
์‚ฌ์†Œํ•œ ์ผ์ด์ง€๋งŒ ์ข…์†์„ฑ์„ ์ œ๊ฑฐํ•˜๋ฉด ๋ชจ๋“  ์ฐจ์ด๊ฐ€ ์ƒ๊น๋‹ˆ๋‹ค ๐Ÿ˜‰

์•ž์œผ๋กœ AOT๊ฐ€ DLL ํŒŒ์ผ์„ WASM ํŒŒ์ผ๋กœ ์ปดํŒŒ์ผ ํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

์‚ฌ์ „ ๋ Œ๋”๋ง ๊ฐœ์„  # 26794 _ (์ ˆ๋Œ€ ํด๋ž˜์‹ FOOC ํšจ๊ณผ ๋ฐฉ์ง€) _

์—ฌ๊ธฐ์— ํ•„์š”ํ•œ ๊ฐœ๋…์„ SSR ํด๋ผ์ด์–ธํŠธ ์ธก ์ˆ˜ํ™” ๋ผ๊ณ ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜ ๋งํฌ์˜ ์ฒซ ๋ฒˆ์งธ ๋‹จ๋ฝ์— ์„ค๋ช… ๋œ js SSR ๋žœ๋“œ์˜ ์˜ˆ :

๋ฌธ์ œ # 26802๋Š” ์œ„์—์„œ ์–ธ๊ธ‰ ํ•œ ๋ฌธ์ œ์— ๋ณ‘ํ•ฉ๋˜์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

Blazor ์šฉ ๊ณต์‹ Microsoft ๋””์ž์ธ ๊ตฌ์„ฑ ์š”์†Œ : # 11229
์ด๋ฏธ 122 ๊ฐœ์˜ ์ฐฌ์„ฑ ํˆฌํ‘œ๋กœ ๋ฐฑ ๋กœ๊ทธ์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ํˆฌํ‘œ ๋œ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

Blazor์—์„œ ์ž์‹ ๋˜๋Š” ๋ถ€๋ชจ ๊ตฌ์„ฑ ์š”์†Œ ์ฐธ์กฐ๋ฅผ ๊ฐ€์ ธ ์˜ค๋Š” ๊ธฐ๋ณธ ์ œ๊ณต ๋ฐฉ๋ฒ• : https://github.com/dotnet/aspnetcore/issues/26826

SSRS ์ง€์› : # 362, # 1528, # 1764, # 12666, # 22304

๋ชจ๋“  ๋ฌธ์ œ๊ฐ€ ๋‹ซํžˆ๊ณ  ์ž ๊ฒผ์œผ๋ฏ€๋กœ ์ฐฌ์„ฑ ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

2018 ๋…„ ์ดํ›„ ์—…๋ฐ์ดํŠธ์—†์ด ํ”ผ๋“œ๋ฐฑ ์‚ฌ์ดํŠธ์—์„œ ํ˜„์žฌ 1005 ๊ฐœ ํˆฌํ‘œ :
ASP.NET Core ์šฉ SSRS ReportViewer ๊ฐœ๋ฐœ โ€“ ACE ์ปค๋ฎค๋‹ˆํ‹ฐ ๋„๊ตฌ์— ๋Œ€ํ•œ ๊ณ ๊ฐ ํ”ผ๋“œ๋ฐฑ

.NET 6์˜ Blazor์— ๋Œ€ํ•œ ๋ฐ˜์‘ ํ˜• ๋ฉ”๋‰ด ์ปจํŠธ๋กค # 26917

.NET 6 ์šฉ MAUI (UI ๋””์ž์ธ) Studio # 26918

https://github.com/dotnet/aspnetcore/issues/26016 ๋ Œ๋”๋ง์— ๋Œ€ํ•œ ๋” ๋งŽ์€ ์•ฑ ์ˆ˜์ค€ ์ œ์–ด๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค.

@ danroth27 ์ผ๋ถ€ ์œ ํ˜•์˜ ๋ผ์šฐํ„ฐ์—์„œ Blazor๊ฐ€ ์ฐจ๋‹จ๋˜๋Š” ๋ฌธ์ œ๋Š” ์–ด๋–ป๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๊นŒ? ์ˆ˜๋™ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ ์™ธ์—์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ˆ˜ํ–‰๋˜๋Š” ์ž‘์—…์ด ์žˆ์Šต๋‹ˆ๊นŒ? ํ‹ฐ์ผ“์€ ์ƒˆ๋กœ์šด ๋Œ“๊ธ€์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

https://github.com/dotnet/aspnetcore/issues/19511

https://github.com/dotnet/aspnetcore/issues/19552

์ •์  ์‚ฌ์ดํŠธ ์ƒ์„ฑ๊ธฐ # 26929

@mrpmorris "dll"ํ™•์žฅ์ž๋ฅผ ๊ฐ€์ง„ ํŒŒ์ผ์ด ๋‹จ์ˆœํžˆ ์ฐจ๋‹จ๋˜๋Š” ํ™˜๊ฒฝ์—์žˆ๋Š” ๊ฒฝ์šฐ ํ™•์žฅ์ž๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ์ˆ˜๋™ ๋‹จ๊ณ„๋ฅผ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ์ด ์˜์—ญ์—์„œ ์ถ”๊ฐ€ ์ž‘์—…์„ ํ™•์ธํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ์ƒ๊ฐ๋˜๋Š” ๊ฒฝ์šฐ ์ œ์•ˆ ์‚ฌํ•ญ๊ณผ ํ•จ๊ป˜ ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•ด ์ฃผ์‹œ๋ฉด ๊ฒ€ํ† ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ข‹์€ ์•„์นจ์ž…๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์ฐฉ๊ฐํ•˜์ง€ ์•Š์•˜ ์œผ๋ฉด ์ข‹๊ฒ ์ง€ ๋งŒ ํƒ€์ด๋จธ () ๊ฐ€
๋ธŒ๋ผ์šฐ์ €์—์„œ ํƒญ์„ ์ „ํ™˜ํ•˜๋ฉด ์†๋„๊ฐ€ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค.
๊ฐ€๋Šฅํ•œ ๋ฌธ์ œ์˜ ๊ธฐ๋ณธ ์˜ˆ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์ด๊ฒƒ์ด ๋‚ด ์ €์žฅ์†Œ ๋งํฌ (https://github.com/PercyLeon123/Cronometro)์ž…๋‹ˆ๋‹ค.
๋ฌด์Šจ ์ผ์ด ์žˆ์—ˆ๋Š”์ง€ ์ž์„ธํžˆ ์•Œ์•„ ๋ณด๋ ค๋ฉด ๋ช‡ ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ๊ธฐ๋กํ•˜์‹ญ์‹œ์˜ค.

๊ธฐ๋ณธ์ ์ด๊ณ  ๊ฐ„๋‹จํ•œ ์˜ˆ, 10 ๋ถ„ ๋Š๋ ค์ง https://youtu.be/jHLVCSGXPMs
์ฝ”๋“œ๊ฐ€ ๋” ๋งŽ์€ ์˜ˆ, 1 ๋ถ„ 50 ์ดˆ ๋Š๋ ค์ง https://youtu.be/YhEVTVB2ai0
ํƒญ์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š์œผ๋ฉด ํƒ€์ด๋จธ๊ฐ€ https://youtu.be/2NI0NhRLdFY ์†๋„๋ฅผ ๋Šฆ์ถ”์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์„ค๋ช…์—์„œ ๋‚˜๋Š” ๋ฌด์Šจ ์ผ์ด ์ผ์–ด ๋‚ฌ๋Š”์ง€ ์ž์„ธํžˆ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ €๋Š” Lima-Peru์˜ Percy Leรณn์ž…๋‹ˆ๋‹ค.
์ €์—๊ฒŒ ์—ฐ๋ฝํ•˜์‹ญ์‹œ์˜ค Linkedin
์ธ์‚ฌ๋ง!

์‹ ๊ณ  ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค, @ PercyLeon123.
์ด ๋ฌธ์ œ๋ฅผ ๊ฐœ๋ณ„์ ์œผ๋กœ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ์ƒˆ๋กœ์šด ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

๋Œ€๋ถ€๋ถ„์˜ ๊ธฐ๋Šฅ ์š”์ฒญ์€ Blazor์™€ ๊ด€๋ จ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ์ด๊ธฐ ๋•Œ๋ฌธ์— ์ดํ•ดํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋™๋ฃŒ Blazor ๊ฐœ๋ฐœ์ž๋“ค๊ณผ ๊ด€๋ จํ•˜์—ฌ ์ค‘์š”ํ•˜์ง€ ์•Š์€ ๋‹ค์–‘ํ•œ ์ด์œ ๋กœ Blazor๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ์‚ฌ๋žŒ๋“ค์ด ์—ฌ์ „ํžˆ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์‹œ๊ฐ„์ด ํ•ต์‹ฌ ๊ธฐ๋Šฅ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๋„์›€์ด ๋  ํ•ต์‹ฌ ASP.NET ๊ธฐ๋Šฅ์„ ์†์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ํ•ด๋‹น ๊ธฐ์ˆ ์— ๋„ˆ๋ฌด ํŽธํ–ฅ๋˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ฐฌ์„ฑ ํˆฌํ‘œ์— ๋”ฐ๋ฅธ ์ฃผ์š” ๊ธฐ๋Šฅ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • LetsEncrypt ์ง€์› ์ถ”๊ฐ€ ( LetuceEncrypt๋Š” ์—ฌ์ „ํžˆ DNS ๊ฐฑ์‹  ํ•„์š”) # 4712
  • HTTP / 3 ์ง€์› ์ถ”๊ฐ€ # 15271
  • MVC # 11558์— ์ŠคํŠธ๋ฆฌ๋ฐ API ์ง€์› ์ถ”๊ฐ€
  • HTTP / 2 ์ถ”๊ฐ€ : ์„œ๋ฒ„ ํ‘ธ์‹œ ์ง€์› # 4249
  • appsettings.json # 2867์— ๋Œ€ํ•œ JSON ์Šคํ‚ค๋งˆ ์ •์˜
  • ์ปจํŠธ๋กค๋Ÿฌ ์ž‘์—… ์ด๋ฆ„์— ๋Œ€ํ•œ Async ์ ‘๋ฏธ์‚ฌ๊ฐ€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ž˜๋ฆฝ๋‹ˆ๋‹ค. # 8998
  • ProblemDetails ๋Š” 404 NotFound ๋ฐ 500 # 4953์— ๋Œ€ํ•ด ๋ฐ˜ํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • C # 8์˜ nullable ์ฐธ์กฐ ํ˜•์‹์„ ์‚ฌ์šฉํ•˜๋„๋ก ASP.NET Core ์—…๋ฐ์ดํŠธ # 5680
  • ๋น„๋™๊ธฐ ์‹œ์ž‘ ํด๋ž˜์Šค ๋ฐ ํ•„ํ„ฐ๋ฅผ ์ง€์›ํ•˜๋„๋ก IAsyncStartup ๋ฐ IAsyncStartupFilter ์ถ”๊ฐ€ # 5897
  • GenericHost์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ConfigureTestContainer # 14907
  • ๋ฒ ๋“œ๋ฝ ์—”๋“œ ๊ฒŒ์ž„ # 15005
  • ์ฝ˜ํ…์ธ  ๋ณด์•ˆ ์ •์ฑ… # 6001์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€
  • ์ƒˆ๋กœ์šด Forwarded ํ—ค๋” (RFC 7239) # 5978 ์ง€์›
  • LinkGenerator # 14192๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ ˆ๋Œ€ URL์— ๋Œ€ํ•œ ํ˜ธ์ŠคํŠธ / ์ฒด๊ณ„๋ฅผ ์‰ฝ๊ฒŒ ๊ตฌ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์ž‘์—…์‹œ ํŠน์ • ํ…Œ์ŠคํŠธ ์‹œ์ž‘ ํด๋ž˜์Šค๋ฅผ ์ง์ ‘ ํ˜ธ์ถœํ•˜๋Š” ์ƒˆ๋กœ์šด WebHostFactory ์˜ต์…˜ # 26487
  • JsonPatchDocument๋Š” ASP.NET vNext์—์„œ System.Text.Json์„ ์‚ฌ์šฉํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. # 24333
  • ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ์—์„œ ์œ ํ˜• / ํŒŒ์‹ฑ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ ๋ถ„๋ฆฌ (400 ๋Œ€ 422) # 25732

์—ฌ๊ธฐ์—์„œ Blazor๊ฐ€ ์•„๋‹Œ ๋ฌธ์ œ์˜ ์ „์ฒด ๋ชฉ๋ก์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ๋Šฅ ์š”์ฒญ : Drop-in component for ASP Identity Administration, Portals, UI, SSO, Claims, AD-Sync, Token, Multi.Tenant Management Visual Studio ํ…œํ”Œ๋ฆฟ์— ์ƒ์—…์šฉ ๋ผ์ด์„ ์Šค ํƒ€์‚ฌ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ํ•„์š”ํ•˜์ง€ ์•Š์Œ).

๋‚˜๋Š” ๋ช‡ ๋…„ ๋™์•ˆ๋ณด๊ณ  / ๊ธฐ๋‹ค๋ ธ๋‹ค. ์ฐธ์„์„ฑ์žˆ๊ฒŒ ์ตœ๊ทผ์˜ ์ผ๋ถ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์œผ๋กœ ์ธํ•ด ์š”์ฒญํ•ด์•ผํ–ˆ์Šต๋‹ˆ๋‹ค .Microsoft๋Š” ๊ฐœ๋ฐœ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์œ„ํ•ด ์ด๊ฒƒ์„ ๋‹ค์‹œ ๋ฐฉ๋ฌธํ•˜์—ฌ ๊ฐ€๊ฒฉ ์ค‘ ์ผ๋ถ€๋Š” ๋ฐฉ๊ธ€๋ผ๋ฐ์‹œ, ๋ฒ ํŠธ๋‚จ, ์ธ๋„, ํ•„๋ฆฌํ•€ ๋“ฑ์˜ ๊ฐœ๋ฐœ์ž 10 ~ 15 ๋ช…์˜ ๊ธ‰์—ฌ์™€ ๋น„๊ตํ•ฉ๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ๋ฐ ๊ธฐ๋ณธ ์š”๊ตฌ ์‚ฌํ•ญ์ด์ง€๋งŒ ๋งค์šฐ ๋ณต์žกํ•˜๊ณ  ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

Java, PHP Stacks ๋“ฑ๊ณผ๋Š” ๋‹ฌ๋ฆฌ .NET ๋„ค์ดํ‹ฐ๋ธŒ ๋“œ๋กญ ์ธ ์†”๋ฃจ์…˜์—๋Š” ๊ณต๋ฐฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋ชจ๋“  ํ”Œ๋žซํผ์—์„œ ์›ํ™œํ•˜๊ฒŒ ํ™œ์šฉํ•˜๋Š” ID ๊ด€๋ฆฌ ๋ฐ ๊ด€๋ฆฌ ํ”„๋ ˆ์ž„ ์›Œํฌ ์˜ต์…˜ (์˜ˆ : J2EE Pluggable Identity)์ด ๊ธฐ๋ณธ์ ์œผ๋กœ ๋งŽ์ด ๋–จ์–ด์ง‘๋‹ˆ๋‹ค. ๊ด€๋ฆฌ ํ”„๋ ˆ์ž„ ์›Œํฌ ๋˜๋Š” JSR 168 ๋˜๋Š” JSR 286 ๋˜๋Š” JSR-351 ๋˜๋Š” JSR-375.

์ด๊ฒƒ์ด ์™œ ์ค‘์š”ํ•œ๊ฐ€์š”? Java ๋˜๋Š” PHP๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ์Šคํƒ์—์„œ ์‰ฝ๊ณ  ๋ช…ํ™•ํ•˜๋ฉฐ ํ•ต์‹ฌ์ ์ธ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ JSR 168 ๋˜๋Š” JSR 286 ๋˜๋Š” JSR-351 ๋˜๋Š” JSR-375 ๋ฉ€ํ‹ฐ ํ…Œ๋„ŒํŠธ, ๊ทธ๋ฃน ๋Œ€ ์—ญํ•  ๋˜๋Š” ๊ทธ ๋ฐ˜๋Œ€์˜ ๊ฒฝ์šฐ ๋งค์šฐ ์‰ฝ์Šต๋‹ˆ๋‹ค. .NET, ๋ชจ๋ฐ”์ผ ์žฅ์น˜, ํฌํ„ธ์€ ๋ชจ๋‘ IBM, SalesForce, Oracle ๋˜๋Š” Red Hat ๋“ฑ์—์„œ ๊ด€๋ฆฌํ•˜๋Š” ๋ณด์•ˆ ์ˆ˜์ •๊ณผ ์›ํ™œํ•˜๊ณ  ์ผ๊ด€๋˜๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋Š” ์ฆ‰์‹œ ์ƒ์‚ฐ์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

.Net์—์„œ๋Š” ์ง€์›์ด ๋ฌดํšจํ™”๋˜๊ฑฐ๋‚˜ ๋งค์šฐ ์ œํ•œ์ ์ด๋ฉฐ ASP ์•ฑ์˜ ์ง„์ž… ๋ฐ ์ฑ„ํƒ์— ๋Œ€ํ•œ ์žฅ๋ฒฝ์œผ๋กœ ํ•ญ์ƒ ํƒ€์‚ฌ ์กฐํ•ฉ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” Microsoft ์ „๋ฌธ๊ฐ€์˜์ฃผ์˜๊ฐ€ ํ•„์š”ํ•œ ๊ฐœ๋ฐœ์ž ๋ฐ ๋ณด์•ˆ ์ทจ์•ฝ์„ฑ์—๊ฒŒ๋Š” ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์˜ˆ : ์šฐ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ์œ„ํ•œ OSS๊ฐ€ ์•„๋‹Œ ๊ฐœ์ธ ์ •๋ณด ๊ณต์œ  ์‚ฌ์ดํŠธ๋ฅผ ๊ฑฐ์˜ ๋ฌด๋ฃŒ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค (์›ํ•˜๋Š” ๊ฒฝ์šฐ ์ง€๋ถˆ). ์›น ์–‘์‹์œผ๋กœ ์‹œ์ž‘ํ–ˆ์„ ๋•Œ Simple Membership, the Identity, Identity 2 ASP MVC ์œ„์— ๋งŽ์€ ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ .NET Core๋กœ ์˜ฎ๊ฒผ์„ ๋•Œ๋Š” ๋˜ ๋‹ค๋ฅธ ๋…ธ๋ ฅ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ ์™ธ์—๋„ ๋‚ด๋ถ€ ๊ฐœ๋…๊ณผ ๊ทธ๊ฒƒ์ด ์ƒˆ๋กœ์šด ๊ฒƒ์„ ์˜๋ฏธํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•ด ๋งŽ์€ ํ˜ผ๋ž€์ด์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์—ญํ• , ํด๋ ˆ์ž„, ํŽ˜๋”๋ ˆ์ด์…˜, SAML, SAML 2.0, Open ID 2.

์›ํ•˜๋Š” ์†”๋ฃจ์…˜์„ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค.

  • ๋“œ๋กญ ์ธ์€ ASP ID ์—์ฝ” ์‹œ์Šคํ…œ, ๊ด€๋ฆฌ, UI, SSO, ํ† ํฐ, ๋‹ค์ค‘ ํ…Œ๋„ŒํŠธ ๊ด€๋ฆฌ๋ฅผ ์ง€์›ํ•˜๋Š” ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.
  • ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ์ผœ๋Š” ๊ตฌ์„ฑ ์„น์…˜์ž…๋‹ˆ๋‹ค.
  • VS ํ…œํ”Œ๋ฆฟ์— ํฌํ•จ (Identity Server ์ œ๊ฑฐ, ๊ธฐ๋ณธ MS ์˜ต์…˜ ์‚ฌ์šฉ ๋“ฑ)
  • Allow-Easy AD Active Directory ํ†ตํ•ฉ
  • User Defined/Created Fields UDF ๊ด€๋ฆฌ์ž ์ˆ˜์ค€ ์ง€์›์—์„œ.
  • ํ˜„์žฌ ์˜ต์…˜๊ณผ ๊ฐ€๊ฒฉ ์ฑ…์ •์œผ๋กœ ์ธํ•ด ๊ด‘๋ฒ”์œ„ํ•œ ์žฌ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ MS ํ”„๋ ˆ์ž„ ์›Œํฌ๋ฅผ ์™„์ „ํžˆ ํฌ๊ธฐํ•˜์ง€ ์•Š๊ณ ๋„ .NET ์Šคํƒ์—์„œ ๊ณ„์† ์‚ฌ์šฉ๋˜๋Š” ๊ธฐ์กด ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์ƒ๋‹น์ˆ˜๊ฐ€ ์ œ๊ฑฐ๋ฉ๋‹ˆ๋‹ค.

ํ•˜์ด ํƒ€์ž„ MS๋Š”์ด ํ•ต์‹ฌ ๊ฒŒ์ดํŠธ ์œ ์ง€ ๊ธฐ๋Šฅ์„ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค !!

SAML2 ๋ฐ CAS ์ถ”๊ฐ€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

PartialViews๋ฅผ ViewComponents๋กœ ์ž๋™ ์—…๊ทธ๋ ˆ์ด๋“œ ์˜ต์…˜ ๋งŽ์€ ๋ ˆ๊ฑฐ์‹œ ์ฝ”๋“œ๊ฐ€ ๋ถ€๋ถ„์— ๊ฑธ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ViewComponents ๋˜๋Š” TagHelpers ์•ฑ์œผ๋กœ ์ด์‹ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋™์‹œ ํ”„๋ ˆ์ž„ ์›Œํฌ๋Š” ๋” ๊ด‘๋ฒ”์œ„ํ•œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์ด ๋ชฉ๋ก์€ ์™„์ „ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Œ).

  • NodeJs ์ง€์› : x86 / x64 / arm32 / arm64 / ppc64le / ppc64be / x390x
  • OpenJDK ์ง€์› : x86 / x64 / arm32 / arm64 / ppc32 / ppc64le / s390x / sparcv9
  • AspNet ์ฝ”์–ด ์ง€์› : x86 / x64 / arm32 / arm64

๋” ๋งŽ์€ ์•„ํ‚คํ…์ฒ˜์— ์ง€์›์„ ์ถ”๊ฐ€ํ•˜์‹ญ์‹œ์˜ค.

@YohanSciubukgian ํ”ผ๋“œ๋ฐฑ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ณ„ํš์€ ๋Œ€๋ถ€๋ถ„์˜ / ๋ชจ๋“  ๋ฉ”์ธ ๋ผ์ธ OS์™€ ์นฉ ์กฐํ•ฉ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์šฐ๋ฆฌ๊ฐ€ ์ •๋ง๋กœ ๋†“์น˜๊ณ ์žˆ๋Š” ์œ ์ผํ•œ ๊ฒƒ์€ Linux x86 (32 ๋น„ํŠธ)์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ฑฐ์˜ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ์–ธ๊ธ‰ ํ•œ ์ถ”๊ฐ€์ ์ธ ๊ฒƒ๋“ค์€ ๋” ์ ๊ฒŒ ๋‚˜์˜จ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ๋‹น์‹ ์ด ์–ธ๊ธ‰ ํ•œ ๋” ๋งŽ์€ ํ‹ˆ์ƒˆ ๊ตฌ์„ฑ์„ ์ž์œ ๋กญ๊ฒŒ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ทธ๋Ÿด ๊ฒƒ ๊ฐ™์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. AFAICT๋Š” ์‹ค์งˆ์ ์ธ ์ƒ์—…์  ๊ฐ€์น˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” PPC๋ณด๋‹ค FreeBSD (x64)์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ํ›จ์”ฌ ๋” ๋งŽ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ˜œํƒ์„ ์ค„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (๊ทธ๋‹ค์ง€ ๋งŽ์ง€๋Š” ์•Š๋”๋ผ๋„).

๋˜ํ•œ ํ˜„์žฌ Apple Silicon ๋ฐ Arm64 (์ผ๋ฐ˜์ ์œผ๋กœ)๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๋‹นํ•œ ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์นฉ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ๋งŽ์€ ํˆฌ์ž๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ปจํ…์ŠคํŠธ : https://github.com/dotnet/runtime/issues/43313 ๋ฐ https://devblogs.microsoft.com/dotnet/arm64-performance-in-net-5/. ๋ฉ”์ธ ๋ผ์ธ ์นฉ์— ๋Œ€ํ•œ ํ›Œ๋ฅญํ•œ ์ž‘์—…์— ์ง‘์ค‘ํ•˜๊ณ  ๋‹ค๋ฅธ ํ”Œ๋žซํผ์ด ์ง€์›ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ ˆ๊ฑฐ์‹œ / ์• ํ˜ธ๊ฐ€ ์นฉ์„ ๋‚จ๊ฒจ ๋‘๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋‚ซ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ .NET Core์— ๋Œ€ํ•œ MIPS ์ง€์›์„ ๋‹ด๋‹นํ•˜๋Š” ํšŒ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค : https://github.com/dotnet/runtime/issues/38069.

์ด HN ๊ฒŒ์‹œ๋ฌผ์€ ๋งค์šฐ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค : https://news.ycombinator.com/item?id=24640545.

@YohanSciubukgian ํ”ผ๋“œ๋ฐฑ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ณ„ํš์€ ๋Œ€๋ถ€๋ถ„์˜ / ๋ชจ๋“  ๋ฉ”์ธ ๋ผ์ธ OS์™€ ์นฉ ์กฐํ•ฉ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด์ œ ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ํ˜„์žฌ ์šฐ๋ฆฌ๊ฐ€ ์ •๋ง๋กœ ๋†“์น˜๊ณ ์žˆ๋Š” ์œ ์ผํ•œ ๊ฒƒ์€ Linux x86 (32 ๋น„ํŠธ)์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์€ ๊ฑฐ์˜ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋‹น์‹ ์ด ์–ธ๊ธ‰ ํ•œ ์ถ”๊ฐ€์ ์ธ ๊ฒƒ๋“ค์€ ๋” ์ ๊ฒŒ ๋‚˜์˜จ๋‹ค. ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ๋‹น์‹ ์ด ์–ธ๊ธ‰ ํ•œ ๋” ๋งŽ์€ ํ‹ˆ์ƒˆ ๊ตฌ์„ฑ์„ ์ž์œ ๋กญ๊ฒŒ ์ถ”๊ฐ€ ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ทธ๋Ÿด ๊ฒƒ ๊ฐ™์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. AFAICT๋Š” ์‹ค์งˆ์ ์ธ ์ƒ์—…์  ๊ฐ€์น˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” PPC๋ณด๋‹ค FreeBSD (x64)์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ํ›จ์”ฌ ๋” ๋งŽ์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ํ˜œํƒ์„ ์ค„ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค (๊ทธ๋‹ค์ง€ ๋งŽ์ง€๋Š” ์•Š๋”๋ผ๋„).

๋˜ํ•œ ํ˜„์žฌ Apple Silicon ๋ฐ Arm64 (์ผ๋ฐ˜์ ์œผ๋กœ)๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๋‹นํ•œ ๋…ธ๋ ฅ์„ ๊ธฐ์šธ์ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์นฉ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ๋งŒ์œผ๋กœ๋„ ๋งŽ์€ ํˆฌ์ž๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ปจํ…์ŠคํŠธ : dotnet / runtime # 43313 ๋ฐ https://devblogs.microsoft.com/dotnet/arm64-performance-in-net-5/. ๋ฉ”์ธ ๋ผ์ธ ์นฉ์— ๋Œ€ํ•œ ํ›Œ๋ฅญํ•œ ์ž‘์—…์— ์ง‘์ค‘ํ•˜๊ณ  ๋‹ค๋ฅธ ํ”Œ๋žซํผ์ด ์ง€์›ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ ˆ๊ฑฐ์‹œ / ์• ํ˜ธ๊ฐ€ ์นฉ์„ ๋‚จ๊ฒจ ๋‘๋Š” ๊ฒƒ์ด ํ›จ์”ฌ ๋‚ซ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ .NET Core์— ๋Œ€ํ•œ MIPS ์ง€์› ์ž‘์—…์„ํ•˜๋Š” ํšŒ์‚ฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค : dotnet / runtime # 38069 .

์ด HN ๊ฒŒ์‹œ๋ฌผ์€ ๋งค์šฐ ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค : https://news.ycombinator.com/item?id=24640545.

๋‹ต๋ณ€ ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€๋Šฅํ•œ์ง€ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ .net 5 ์šฉ dotnet / runtime repo์—์„œ mono๋ฅผ ๋ณ‘ํ•ฉ ํ–ˆ์œผ๋ฏ€๋กœ ์ฒ˜์Œ์—๋Š” mono ์šฉ์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ์ง€๋งŒ ๊ณต์‹์ ์ธ Microsoft ์ง€์›์„ ํ†ตํ•ด ๊ธฐ์กด ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋…ธ์ถœ ํ•  ๊ฒƒ์„ ์—ผ๋‘์— ๋‘์—ˆ์Šต๋‹ˆ๋‹ค.

์ข‹์€ ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค. dotnet / runtime์˜ Mono๋Š” Android, iOS ๋ฐ wasm์„ ๋Œ€์ƒ์œผ๋กœํ•ฉ๋‹ˆ๋‹ค.

Identity Server # 27053์— ๋‚ด์žฅ

IdentityServer ํ† ํฐ ๊ด€๋ฆฌ์ž

WebSocket ์„ฑ๋Šฅ ํ–ฅ์ƒ

์›น ์–ด์…ˆ๋ธ”๋ฆฌ์˜ ๋‹ค์ค‘ ์Šค๋ ˆ๋”ฉ
https://github.com/dotnet/runtime/issues/40619

JS ๊ฒฉ๋ฆฌ ๊ฐœ์„ -Colocate CS, CSS ๋ฐ JS ํŒŒ์ผ

https://github.com/dotnet/aspnetcore/issues/26145

@mahdisml ๊ด€๋ จ ์„ธ๋ถ€ ์ •๋ณด์™€ ํ•จ๊ป˜ ๋ฌธ์ œ๋ฅผ ์ œ์ถœํ•˜์‹ญ์‹œ์˜ค.

Blazor ์šฉ ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ UI ๊ตฌ์„ฑ ์š”์†Œ

Blazor ์„œ๋ฒ„ ๋˜๋Š” WASM์„ iOS / Android์— ๊ฒŒ์‹œ # 27252

์ผ๋ฐ˜์ ์œผ๋กœ blazor๋ฅผ ์–ธ๊ธ‰ํ•˜์ง€ ์•Š๋Š” ๋น ๋ฅธ ๊ฐœ๋ฐœ ๋ฃจํ”„์™€ ๊ด€๋ จ๋œ ๋ฌธ์ œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ „์ฒด ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ํ›จ์”ฌ ๋นจ๋ผ ์กŒ์œผ๋ฉดํ•ฉ๋‹ˆ๋‹ค.

@valeriob , ์—ฌ๊ธฐ ์žˆ์Šต๋‹ˆ๋‹ค : https://github.com/dotnet/aspnetcore/issues/18486

๋ณด์ƒ ๊ฑฐ๋ž˜๋Š” ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šค ๊ฐœ๋ฐœ์—์„œ ๋งค์šฐ ๊นŒ๋‹ค๋กœ์šด ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๊ทธ๊ฒƒ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•  ์–ด๋–ค ์ข…๋ฅ˜์˜ ๋†’์€ ์ˆ˜์ค€์˜ ํ”„๋ ˆ์ž„ ์›Œํฌ๋ฅผ ์ƒ๊ฐํ•ด ๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ํ•˜์œ„ ์ˆ˜์ค€ ๊ตฌํ˜„์—์„œ๋Š” ์˜ˆ๋ฅผ ๋“ค์–ด redis ๋˜๋Š” RabbitMQ๋ฅผ ์‚ฌ์šฉํ•œ ๊ตฌํ˜„์„ ๋‚ด ์ปค๋ฎค๋‹ˆํ‹ฐ์— ์ œ๊ณตํ•˜์—ฌ์ด๋ฅผ ๋ณด๊ฐ• ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

๋” ๋‚˜์€ ์‹œ์ž‘ ๊ตฌ์กฐ. ์ด์ œ "ConfigureServices"์™€ "Configure"๋Š” ์ƒˆ๋กœ์šด asp.net ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๋ณต์žกํ•ฉ๋‹ˆ๋‹ค.

multiple ์†์„ฑ์— ๋Œ€ํ•œ Blazor InputSelect ์ง€์›. https://github.com/dotnet/aspnetcore/issues/5519

ID์—์„œ SignInManager ๋ฐ UserManager ๋ฅผ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
# 22597

๋™์ ์œผ๋กœ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋งŒ๋“ค๊ณ  ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
Angular ComponentFactoryResolver ๋Œ€์•ˆ.

@Component({
 selector: 'app-root',
 template: `
 <template #parent></template>
 <button (click)="createChild()">Create Child</button> 
 `,
})
export class ParentComponent {
 @ViewChild('parent', { read: ViewContainerRef }) container;

 constructor(private resolver: ComponentFactoryResolver) {}

 createChild() {
 this.container.clear();
 const factory: ComponentFactory = this.resolver.resolveComponentFactory(ChildComponent);
 this.componentRef: ComponentRef = this.container.createComponent(factory);
 }
}
์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰