[C#๊ณผ ์ ๋ํฐ๋ก ๋ง๋๋ MMORPG ๊ฒ์ ๊ฐ๋ฐ ์๋ฆฌ์ฆ] Part8: Entity Framework Core
์ํํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๋์ ์ํด .NET ORM์ธ Entity Framework Core์ ๋ํด ํ์ตํ๋ ๊ฐ์์ ๋๋ค.
์๊ฐ์ 3,441๋ช
๋์ด๋ ์ด๊ธ
์๊ฐ๊ธฐํ ๋ฌด์ ํ
- ๋ฏธํด๊ฒฐ
UDF ๋ฅผ ๊ตฌํ ํ ๋ Annotation ๋ฐฉ์๋ง์ผ๋ก๋ ์์ธ์ฒ๋ฆฌ ๋นํฉ๋๋ค
UDF ๋ฅผ ๊ตฌํ ํ ๋ 2๊ฐ์ง ๋ฐฉ๋ฒ์ด ์๋ ๊ฒ์ผ๋ก ์๊ฐ ํด์ฃผ์ ์ํ ์คํธ ์ผ์ Fluent Api ๋ฐฉ์์builder.HasDbFunction(() => Program.GetAverageReviewScore(0));๋ฅผ ์ฃผ์ ์ฒ
ef-coreorm์๋นต์๋ง์๋ค์ฆ
ใป
0
144
1
- ํด๊ฒฐ
Update By Full ๋ฐฉ์์ ๋ํ์ฌ ์ง๋ฌธ์ด ํ๋ ์์ต๋๋ค.
๋ฐ์์ ์์ค์ ๋๋ฌด ์๋ ๊ฐ์ ๊ฐ์ง๊ณ ์ง๋ฌธ๋๋ฆฌ๋ ๊ฒ์ด ์๋์ง ๋๋ฌด ์ฃ์ก์ค๋ฝ์ต๋๋ค. ใ ๋ฐ์์ ์๊ฐ ๋ง์ด ๋บ์ง ์๊ธฐ ์ํด ํ๋ฑ ํ๋๋ง ์ฌ์ญค๋ณผ๊ฒ์ Update๋ฐฉ์์๋ C
ef-coreormChaYong
ใป
0
248
1
- ๋ฏธํด๊ฒฐ
DB์ ์ฐ๊ฒฐ์ด ๋์ง ์์ ์ง๋ฌธ ๋จ๊ฒจ์
๋จผ์ AppDbContext.csusing System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading
ef-coreorm์๊ฐ์ธ
ใป
0
334
1
- ๋ฏธํด๊ฒฐ
EF_Core_Power_Tools ์ค์น ์ค๋ฅ
<img src="https://cdn.inflearn.com/public/fil
ef-coreormH_dong
ใป
0
368
1
- ํด๊ฒฐ
C#์ผ๋ก DB๋ฅผ ๋ง๋ ๋ค์์ ์ด๋ป๊ฒ ์ธ๋ถ์์ ์ฌ์ฉํ๋์??
์ด๋ฐ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค๊ณ EC2 ์ปดํจํฐ์๋ค๊ฐ ์ด ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๊ฑฐ๋ ํ๋ ๋ฐฉ๋ฒ์ด
EF-CoreORM์ํ๊ตญ
ใป
0
1,018
1
- ๋ฏธํด๊ฒฐ
git tool
์์์ ์ด๋ฐ๋ถ์ ๋์๋ git๋ฒ์ ๊ด๋ฆฌ ํด์ด ๋ฌด์์ธ์ง ์๋ ค์ฃผ์ค์์๋์?
ORMEF-Corexodls5278
ใป
0
380
1
- ๋ฏธํด๊ฒฐ
์์ดํ ๋ง ์ถ๊ฐ๋ก ์์ฑํ๊ณ ์ถ์๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค.
์๋ ํ์ธ์, ๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค!5๋ถ์ฏค์ ๋์ค๋ ๋ด์ฉ์ ๋ณด๋ฉดํ๋ ์ด์ด, ์์ดํ ์ ๋์์ ์์ฑํ๋ ๊ฑธ๋ก ์ดํด๊ฐ ๋๊ฑฐ๋ ์์ ๊ฐ ํ๊ณ ์ ํ๊ฑด ์ดํ์ ์์ดํ ๋ง ์ถ๊ฐ๋ก ์์ฑํ๊ณ ์ถ์๋๋ฐ,Owner ๋ถ๋ถ์์ ์ฒ๋ฆฌ๋ฅผ ์ด๋ป๊ฒ ํด
EF-CoreORMddaengbi
ใป
0
390
1
- ๋ฏธํด๊ฒฐ
sql server ๊ฐ์ฒด ํ์๊ธฐ๊ฐ ๋ณด์ด์ง ์์ต๋๋ค
์๋ ํ์ธ์ <div class="type-pla
ORMEF-Corebae5445
ใป
2
1,236
2
- ํด๊ฒฐ
17:33 Guild Update1vM์ ์ง๋ฌธ์ ๋๋ค.
Guild guild = db.Guilds .Include(g => g.Members) .Single(g => g.Guild
ORMEF-Core์์ฑ์ ์์
ใป
0
385
1
- ๋ฏธํด๊ฒฐ
ChangeTracker์์ ๋ฐ์ํ ์๋ฌ์ ๋๋ค
Guild๊ฐ Nullable์ด ์๋์ด์ TestUpdateAttach์ ์ฒซ๋ฒ๋นผ, StateTest Player Entity๋ฅผ ์์ฑํ๊ณ SaveChanges๋ฅผ ํ๋๋ฐ ์๋ฌ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์์ธ์ Guild์์ FK์ INSERT๊ฐ ์ถฉ๋ ๋ฐ์์ธ๋ฐ, Player์ Da
ORMEF-Core์์ฑ์ ์์
ใป
0
412
1
- ๋ฏธํด๊ฒฐ
GetAverageReviewScore์ Data Annotation, FluentAPI, ์ฌ์ฉ ์ ์ง๋ฌธ์ ๋๋ค.
UDF๊ฐ Configuration(Data Annotation)๊ณผ DB Setup(FluentAPI)๋ก ์ ์ฉ๋๋ ๊ฒ ๊น์ง ์ดํดํ๋๋ฐ ์ด๋ป๊ฒ CalcAverage์ foreach์กฐ๊ฑด๋ฌธ์์ Program.GetAverageReviewScore๋ฅผ ํธ์ถํ๋๋ฐ
EF-CoreORM์์ฑ์ ์์
ใป
0
339
1
- ๋ฏธํด๊ฒฐ
Table Splitting์์ ๋ฐ์ํ๋ ์๋ฌ - EventItem is Mapped on "Item"
2022-05-10 ๊ธฐ์ค Item Entity Class์ Data Annotation์ผ๋ก Item์ด๋ผ๋ ํ ์ด๋ธ์ ์์ฑํ๊ฒ ์ค์ ํ๋๋ฐ, FluentAPI์์ ๋ค์ builder.Entity().ToTable("Items") ์คํ
ORMEF-Core์์ฑ์ ์์
ใป
0
350
1
- ๋ฏธํด๊ฒฐ
Fluent API๋ก FK๋ฅผ ์ค์ ํ ๋ ๋ฐ์ํ๋ ์๋ฌ
2022.05.06 ๊ธฐ์ค builder.Entity() .HasMany(p => p.CreatedItems) .WithOne(i => i.Creator) .HasForeignKe
ORMEF-Core์์ฑ์ ์์
ใป
0
367
1
- ๋ฏธํด๊ฒฐ
[๋ง์ด๊ทธ๋ ์ด์ ์ง๋ฌธ] ํ ์ด๋ธ ๋ฐ์ดํฐ ๋ฐฑ์
| PlayerId | Name | 1 "1"
EF-CoreORM์ฐํ
ใป
0
320
1
- ๋ฏธํด๊ฒฐ
SELECT ํ์ ๋๋น ์ ๋ฐ์ดํธ ์ง๋ฌธ์ด ์์ต๋๋ค
SelectLoading ์ด๋ DTO ํํ์ฒ๋ผ ์ผ๋ถ ๋ฐ์ดํฐ
ORMEF-Corenamopp
ใป
0
260
1
- ๋ฏธํด๊ฒฐ
๊ฒ์ ๊ธฐํ๊ณผ ์ฐ๊ฒฐํด ์๊ฐํ๊ธฐ
์๋ ํ์ธ์. <div class="type-pl
EF-CoreORM์ ์ง
ใป
0
271
1
- ๋ฏธํด๊ฒฐ
๊ฐ์ ๋ด์ฉ ์ค๋ณต ๋ฌธ์
์๋ ํ์ธ์, ํญ์ ๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค. ์๋ ๋ถ๊ป์ ๋จ๊ฒจ์ฃผ์ ๋๋ก ๋ด์ฉ์ด ๋ฐ๋ณต๋๊ณ ์๋๋ฐ์, ์ค๋ณต๋ ๋ด์ฉ์ด ๋ค์ด๊ฐ ์๋ฆฌ์(8:25~) ์๋ ์์ด์ผ ํ ๋ด์ฉ์ด ๋น ์ก๋ค๊ฑฐ๋ ํ ๋ด์ฉ์ ์์๊น์?
EF-CoreORMrhodonite
ใป
0
284
1
- ๋ฏธํด๊ฒฐ
Unhandled exception
์๋ ํ์ธ์. ๊ฐ์ฌ๋. ๊ฐ์ ์ ๋ฃ๊ณ ์์ต๋๋ค. 'CRUD ์ค์ต' ์ ์งํํ๋ ๊ณผ์ ์์ ์๋ฌ๊ฐ ๋ฌ๋๋ฐ, ๊ตฌ๊ธ์ ์ ๊ฒ์ํด๋ด๋ ๋ฑํ ํด๊ฒฐ๋ฒ์ ์ฐพ์ง ๋ชปํด ๊ธ ๋จ๊น๋๋ค. ์ฌ
exceptionORMEF-Coredev.halo1005
ใป
0
522
1
- ๋ฏธํด๊ฒฐ
์์ 8:24๋ถ์ ๋ด์ฉ์ด ์ค๋ณต๋ฉ๋๋ค.
์์ 8:24๋ถ์ ์ง๋๊ฐ๋ ๋ด์ฉ์ด ๋ค์ ๋์ค๊ณ ์์ต๋๋ค. ์์ ๋ถํ๋๋ฆฝ๋๋ค.
EF-CoreORM์ ์ฉ์ค
ใป
0
297
1
- ๋ฏธํด๊ฒฐ
InitalizeDB์ ์๋ฌ ๋ฌธ์ ..
๊ฐ์๋๋ก DB๋ฅผ ์์ฑํ๋ ค๋ ์๊ฐ ------------------------------ db.Database.EnsureDeleted(); db.Database.Ensure
EF-CoreORMKing_field
ใป
0
402
1






