Repository

๊ฐœ๋…

  • Repository๋Š” ์ฃผ๋กœ ์˜์†ํ™”ํ•  ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

  • ์—ฌ๋Ÿฌ ํ™”๋ฉด์— ๊ฑธ์ณ ํš๋“, ๊ฐฑ์‹ ๋ฉ๋‹ˆ๋‹ค.

์–ธ์ œ ์‚ฌ์šฉํ•˜๋‚˜์š”?

  • ์˜ˆ๋ฅผ๋“ค์–ด ์‚ฌ์šฉ์ž ์ด๋ฆ„์ด๋‚˜ ํ†ต์‹  ๊ด€๋ จ ์ •๋ณด ๋“ฑ์€ Repository ์— ํฌํ•จ์‹œ์ผœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

  • ๋Œ€๋ถ€๋ถ„ ๋กœ๊ทธ์ธ ์‹œ ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ๋ฐ›์•„ ๊ทธ ํƒ€์ด๋ฐ์— Repository๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

  • ์‹ฑ๊ธ€ํ†ค์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ํƒ€์ดํ‹€ํ™”๋ฉด์œผ๋กœ ๋Œ์•„๊ฐ€ ๋กœ๊ทธ์ธ ์ •๋ณด๋ฅผ ํŒŒ๊ธฐํ•˜๊ณ  ์‹ถ์„ ๋•Œ ๋“ฑ, Repository๊ฐ€ ํŒŒ๊ธฐ/์žฌ์ƒ์„ฑ ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ ์ ˆํ•œ LifetimeScope๋กœ ๊ด€๋ฆฌํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ์‹œ ์ฝ”๋“œ

public class UserRepository
{
    public string Id { get; private set; } // ์œ ์ € ID
    public string Name { get; private set; } // ์œ ์ €๋ช…

    // ๋กœ๊ทธ์ธ ์‹œ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ •๋ณด ์ดˆ๊ธฐํ™”
    public void SetUser(string id, string name)
    {
        Id = id;
        Name = name;
    }
}

Last updated