์ง๊ธ ์งํํ๋ ํ๋ก์ ํธ๊ฐ ํ์ดํผ ์บ์ฃผ์ผ์ด ์๋๋ค๋ณด๋ ์ด๋ฐ์ ๋ฐ ๋ฐ์ดํฐ๊ฐ ํ์ํ๊ฑฐ๋ ?
์ฒ์์ CSVReader ๊ตฌํด์ ์ ๋นํ ์ฐ๊ณ ์์๋๋ฐ, ์ด๊ฒ ๊ตฌ๊ธ ์ํธ๋ ๋งค๋ฒ ์๋ค๊ฐ๋ค ํ๋ ค๋๊น ๋ถํธํ๊ฑฐ์ผ. csv ์ ์ฅํด์ asset ํด๋๋ก ๊ฐ์ง๊ณ ์ค๊ธฐ๋ ๊ท์ฐฎ๊ณ .
๊ทธ๋ฌ๋ค ์ ๋ฒ์ BG Database ํ ์ธํ ๋ ์ฌ๋๋๊ฒ ๊ธฐ์ต๋์ ์ด์ฐธ์ ์ฌ์ฉํด๋ดค์ง.
์์๋ชป์ด์ง๋ง ํํ๊ณ ๋ ๊ตฌ๊ธ ๋ฒ์ญ ๋์์ผ๋ก ์ด์ฐ์ ์ฐ ์ฝ๋ ๋ฐ์์ฐ๊ธฐํ๋ฉด์ ์ฌ์ฉ๋ฒ์ ์ตํ๊ณ , ๋์ถฉ ๋์๊ฐ๋๊ฑฐ๋ ์ดํดํ ์ ์์์ด.
๋ค๋ฅธ ๊ฑด ์์ ๋ณด๋ฉด์ ์ด์ฐ์ ์ฐ ๋ฐ๋ผ๊ฐ ์ ์์๋๋ฐ, ๊ฐ์๊ธฐ CodeGen์์ ๊ฑธ๋ ค๋ฒ๋ ธ์ด.
์ฝ๋ ์ ๋ค๋ ์ดํฐ๋ผ๋๊ฑด๋ฐ, ์ด๊ฑธ ์ฌ์ฉํ๋ฉด
์ด๋ ๊ฒ ๋งค๋ฒ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ค๊ธฐ ์ํด ์ํ๋ ํ๋์ ์๋ฃํ๊ณผ ์ด๋ฆ์ ์
๋ ฅํ๋ ๊ฒ์์
์๋ ๊ฒ ์ถ์ฝํด์ ์ฌ์ฉํ ์ ์๋ค๋๊ฑฐ์ผ.
๋ฐ์ดํฐ ๋ถ๋ฌ์ค๋ ๊ฒ ํ๋๋ฒ๋ ์๋๊ฑฐ๊ณ , ์ผ์ผํ ์์ผ๋ก ์น๋ค๊ฐ ํด๋จผ์๋ฌ ๋ด๋ ๋ฏธ๋๊ฐ ๋ปํ ๋ณด์ด๋ค๋ณด๋ ์ข์ ๊ธฐ๋ฅ์ด๋ค ์ถ์์ง.
๊ทผ๋ฐ ์ํค๋๋๋ก ๋ค ํ๊ฑฐ ๊ฐ์๋ฐ๋ ์์ ์ด๋ฏธ์ง์ฒ๋ผ ๋์์ ์ํด ใ
๋จผ์ ์ํค๋๋๋ก CodeGen ํ์ฑํํ๊ณ ํ์ผ๋ ๋ง๋ค์์.
๋์ถฉ ๋ณ ์ด์์๋ค๋ ๋ง์ธ๊ฑฐ ๊ฐ๊ณ .
์ฝ๋๋ ๋ชป ์ฝ๊ฒ ์ง๋ง ์๋ ํ์ผ์ด ์๊ฒจ์๋๊ฑฐ ๋ณด๋ ์จ๋ ์๋ ์์ฑ์ ์ ๋๊ฑฐ ๊ฐ๋๋ผ๊ณ .
ํ ์คํธ๋ก ํ๋ ๋ง๋ค์ด๋จ๊ณ (์ฝ๋ ์ ๋ค๋ ์ดํฐ ์์ฑํ ์ดํ ์ถ๊ฐ ์ํจ)
Entity ์ด๋ฆ์ด ์ ๋ํฌ ํด์ผ ๋๋์ ๊ทธ๊ฒ๋ ์ฒดํฌ ํ๊ณ
์ด์ ์ค๋น๋๊ฑฐ ๊ฐ์ผ๋ ์ firstRow.Get<int>("testint") ๋ฅผ ๋ฐ๊ฟ๋ณด๋ ค๊ณ ํ์ง.
๋ฉ๋ด์ผ์ด๋ ๋ค๋ฅธ ์์ ๋ค์์ ๋ณธ ๋๋ก๋ผ๋ฉด firstRow.f_testint ๋ก ์ฌ์ฉํ ์ ์๊ฒ ์ง.
......?
์๋๋ค?
๋ฑ ์ฌ๊ธฐ์ ๋งํ ์๋ ์ํ์ผ.
์ค๋ช ์ ํ์ด์ง๋ฅผ ์ด์ฌํ ๋ด๋ ๋ด๊ฐ ๋ญ ๋น ๋จ๋ ธ๋์ง, ํน์ ์๋ชปํ๋์ง๋ฅผ ๋ชจ๋ฅด๊ฒ ์ด.
์ ๋ช ํ ์์ ์ด๊ณ , ๊ตฌ๊ธ์ ๊ฒ์ ๋๋ ค๋ด๋ ์๋์ค๋๊ฑฐ ๋ด์ ๋ถ๋ช ํ ๋ค๋ค ์ ์ฐ๊ณ ์๊ณ ๋ํผ์ ๊ฐ๋ธ ์ ์ง ํ๊ณ ์๋๊ฑฐ ๊ฐ์๋ฐ ๊ทธ๊ฒ ๋ญ์ง๋ฅผ ๋ชจ๋ฅด๋ ํ์ฅํ๋ค์ผ.
ํน์ ๋ด๊ฐ ๋ฌด์จ ๋ธ ์ ์ง์ ํ๊ณ ์๋์ง ์ง์๊ฐ๋ ์น๊ตฌ๋ค ์์ผ๋ฉด ๋ต๊ธ๋ก ์๋ ค์ฃผ๋ฉด ๋๊ฒ ๊ณ ๋ง์ธ๊ฑฐ์ผ.
https://www.bansheegz.com/BGDatabase/Addons/CodeGeneration/
์ด๊ฑด ์ค๋ช ์ ํ์ด์ง์.
ํ, ์ด๋ ธ์๋ ์์ด๊ณต๋ถ ํ๋ผ๋ ์ด๋ฅธ๋ค ๋ง์์ ๋ค์์ด์ผ ํ๋๋ฐ...
๊ทธ๋ฆผ ๊ทธ๋ฆด๊ฑฐ๋๊น ์์ด ์๋ฐฐ์๋ ๋๋ค๊ณ ๊ฐ์๋ฆฌํ๋ ์ด๋ฆฐ ๋ ์ ๋๋ฅผ ์ฅฐ๋ด ํจ๊ณ ์ถ๋ค ์ง์ง...
์๋์ผ ๋๋ ๋ณธ๋ฌธ์์ ForEachEntity๋ผ๋ ํจ์๋ฅผ ์ด๊ฑฐ๋ผ ๊ฐ๋ณ Entity ์ ๊ทผํ ๊บผ๋ฉด ํด๋์ค ์ด๋ฆ ์์ ํ๋ฆฌํฝ์ค ๋ถ์ฌ์ผํจ. ์ด ๊ฒฝ์ฐ E_
๊ธ ์์ ํด๋จ์. ๋ณด๋๊ฑฐ ์๋ก๊ณ ์นจํด์ ๋ณด๋ฉด ๋จ.
ํ์ธํด์ ํด๊ฒฐํ์ด!! ํจํค์ง ์ด๋ฆ์ ์ ๋ ฅํ๋ฉด 'ํจํค์ง์ด๋ฆ.ํด๋์ค์ด๋ฆ.GET...'์ผ๋ก ์ ๊ทผํด์ผ ๋๊ณ ์์ผ๋ฉด 'ํด๋์ค์ด๋ฆ.GET...'์ผ๋ก ์ ๊ทผํด์ผ ๋๋๊ตฌ๋! ์ฝ๋ ์ ๋ค๋ ์ดํฐ๋ฅผ ํตํด์ ์์ฑํด๋๋๋ผ๋ ํด๋์ค์ด๋ฆ์ ํตํด ์ ์ธํ์ง ์์ผ๋ฉด ๊ฐ๋ณ Entity๊ฐ ํจ์๋ก ์ง์ํ์ง ์๋๊ฑฐ์์ด!
BG Database๋ก ๊ฒ์ํด์ ์๋ฃ๊ฐ ์๋์์ ๊ณ ์ํ๋๋ฐ ํ๋ ์๋ ๋ธ๋ก๊ทธ๊ฐ ๋๊ฑฐ์๊ตฌ๋. ๋ณด๊ณ ๋ง์ด ๋์ ๋ฐ์๋๋ฐ ์ด๋ ๊ฒ ๋ฌธ์์ ๋ธ๋ก๊ทธ ๊ธ๊น์ง ์ง์ ๋ฐ๊ฟ์ฃผ๋ ์ง์ง ๋๋ฌด ๊ณ ๋ง๋ค. ๋ธ๋ก๊ทธ๋ ๊ฐ๋ฐ ์ด์ฌํ ํ๋๋ฐ ๋ณด๋ฉด์ ๋ง์ด ๋์ ๋ฐ๋๋ก ํ ๊ฒ. ํน์๋๋ผ๋ ๋์ค์ ๋ด๊ฐ ๋์ ์ค ์ ์๋๊ฒ ์๋ค๋ฉด ๋์์ค๊ฒ. ์ง์ง์ง์ง ๋กํ!
var ๋จ๋ฐํ๋๊น ํด๋์ค ์๋ชป๋ค์ด๊ฐ๋ ๋ชจ๋ฅด์ง... E_Test.GetEntity(string name).f_testint ์ด๋ ๊ฒ ์ ๊ทผํด๋ผ
์๋๋ค ํด๋์ค๋ ๋ฌธ์ ์๋ค ๋ด ๋๊น๋ ๋ณ์ ์ด๋ค ๊ทธ๋๋ ๋ด๊ฐ ์ ์๋๋ก ํ๋ฉด ๊ฑ ๋์๊ฐ๊ฑฐ์
๋ง์ ํด๋์ค๋ถํฐ ์ ๊ทผํ๋ ๊ฑฐ์๋๋ผ. ๋ต๊ธ ๋จ๊ฒจ์ค์ ๋๋ฌด ๊ณ ๋ง๋ค์ผ. ๋์ ๋ง์ด ๋์ด ์ง์ง.