Model Binding
์๋ฏธ
๋ชจ๋ธ(data)๋ฅผ ์ฐ๊ฒฐ์ํค๋ ๊ฒ
ํด๋ผ์ ์์ฒญ์ ์ฒ๋ฆฌํ๊ธฐ ์ํด์๋ ์๋ฒ๊ฐ ํ์ฐ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ์๋ฐ์ ์์. ์ด ๋ฐ์ดํฐ(๋ชจ๋ธ)๋ค์ ์๋ฒ์์ ์ด๋ป๊ฒ ์ ๊ทผํ ์ง ์ค์ ํ๋ ๊ฒ
๋ฐ์ดํฐ ์ข
๋ฅ
1. Binding Model
ํด๋ผ์ด์ธํธ์์ ๋ณด๋ธ Request๋ฅผ ํ์ฑํ๊ธฐ ์ํ ๋ฐ์ดํฐ ๋ชจ๋ธ
์ ํจ์ฑ ๊ฒ์ฆ์ด ํ์
2. Application Model
์๋ฒ์ ๊ฐ์ข ์๋น์ค๋ค์ด ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ
์) class WeatherForecast (WeatherForecast.cs)
3. View Model
Model - View - Controller ์ฌ์ด์์ View์๊ฒ ๋๊ฒจ์ฃผ๊ธฐ ์ํ ๋ฐ์ดํฐ ๋ชจ๋ธ
UI๋ฅผ ๋ง๋ค๊ธฐ ์ํ ๋ฐ์ดํฐ ๋ชจ๋ธ
4. API Model
WebAPI Controller ์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ
JSON, XML ๋ฑ์ ํฌ๋งท์ผ๋ก ์๋ตํ ๋ ํ์ํ ๋ฐ์ดํฐ ๋ชจ๋ธ
Binding Model ์ข
๋ฅ
1. Form Values
Request์ Body์์ ๋ณด๋ธ ๊ฐ
HTTP POST ์์ฒญ์์ body์ ๋ค์ด์จ ๊ฐ์ ์๋ฏธํจ
2. Routes Values
routingํ ๋ URL ๋งค์นญ์ด๋ Default Value์ ์ํด ์ ์ฉ๋๋ ๊ฐ
3. Query string Values
URL ๋์ ๋ถ์ด๋ ๋ฐฉ๋ฒ
? ๋ค์ ๋ถ๊ณ , http url ๊ท์ฝ์ ๋ฐ๋ฆ
HTTP GET ์์ฒญ์์ ์ด ๋ฐฉ์์ ๋ฐ๋ฆ
www.url.com/?Name=dongchoi&id=123
๋๋ฌธ์/์๋ฌธ์ ๊ตฌ๋ถํ์ง ์์. ๊ฐ์ ๊ฐ์ผ๋ก ๋ด
* ์ฐ์ ์์
์์ 1,2,3 ์์๋๋ก ์ฐ์ ์์๋ฅผ ๊ฐ์ง
ํท๊ฐ๋ฆด ์ ์์ผ๋, ๊ฐ๋ฅํ ํ๊ฐ์ง ์ข ๋ฅ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ ๋ฏ
WebAPI ์๋ฒ์์๋ ํด๋ผ๊ฐ ์๋ฒ๋ก ๊ฐ์ ๋ณด๋ผ ๋ POST์์ฒญ + Form Values์ผ๋ก ๋ณด๋ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง์. ํด๋ผ๊ฐ ๊ฐ์ ๋ฐ๋ GET ์์ฒญํ ๋ Routes Values or Query string Values๋ฅผ ํจ
Complex Types
๋๊ฒจ๋ฐ์ ์ธ์๊ฐ ๋๋ฌด ๋ง์์ง๋ฉด ๋ถ๋ด์ค๋ฌ์์ง๋๊น, ๋ณ๋์ ๋ชจ๋ธ๋ง ํด๋์ค๋ฅผ ๋ง๋ค์ด์ฃผ๋ ๊ฒ (ํจ์๊ฐ ๋ฐ๋ ์ธ์๊ฐ ๋๋ฌด ๋ง์ผ๋ฉด ์์ข์ผ๋๊น, ๊ตฌ์กฐ์ฒด๋ก ๋ฌถ์ด์ฃผ๋ ๋๋)
์๋ก์ด ๋ชจ๋ธ๋ง ํด๋์ค๋ฅผ ๋ง๋ค์์ผ๋ฉด, ๋ฉ์๋์ ์ธ์์ ๊ทธ๋ฅ ๋ฃ์ด์ฃผ๊ธฐ๋ง ํ๋ฉด ๋จ. ASP.NET์์ ์์์ ์ฒ๋ฆฌ๋จ
Last updated