تزریق وابستگی از طریق پروپرتی (Property Injection)

در این روش Dependency از طریق یک Property به درون کلاس تزریق می شود. لطفاً کد زیر را در نظر بگیرید.

1 public class CustomerBusinessLogic

2 {

3 public CustomerBusinessLogic()

4 {

5 }

6

7 public string GetCustomerName(int id)

8 {

9 return DataAccess.GetCustomerName(id);

10 }

11

12 public ICustomerDataAccess DataAccess { get; set; }

13 }

14

15 public class CustomerService

16 {

17 CustomerBusinessLogic _customerBL;

18

19 public CustomerService()

20 {

21 _customerBL = new CustomerBusinessLogic();

22 _customerBL.DataAccess = new CustomerDataAccess();

23 }

24

25 public string GetCustomerName(int id) {

26 return _customerBL.GetCustomerName(id);

27 }

28 }

همانطور که در کد بالا مشاهده می کنید کلاس CustomerBusinessLogic حاوی یک پروپرتی به نام DataAccess است که در درون آن میتوانید یک شی از نوع ICustomerDataAcces را قرار دهید. بنابراین CustomerService وظیفه ساختن یک شی از این اینترفیس برای مثال CustomerDataAcces را دارد و سپس این شی را در درون پروپرتی DataAccess از کلاس CustomerBusinessLogic قرار می ‌دهد.


پرووید: مرکز آموزش تخصصی برنامه نویسی و توسعه نرم افزار