چطور در ASP.net core Razor Page پراپرتی اینجکشن انجام دهیم؟
mohsen•1 سال قبل
ارسال شده در
mohsenفرض کنید سرویسی با اینترفیس IMyService داریم می خواهیم این سرویس را در تمامی متدهای Razor Page استفاده کنیم. راه اول اینجکت کردن سرویس مورد نظر بعنوان ورودی تمامی متد های صفحه است. مانند:
public class MyPageModel: PageModel {
public async Task OnGet([FromServices] IMyService myService) { ... }
public async Task OnPost([FromServices] IMyService myService) { ... }
}
راه دیگه برای اینجک کردن این سرویس، استفاده از پراپرتی اینجکشن است. که میتوانیم به صورت زیر انجام دهیم:
public class MyPageModel: PageModel {
[FromServices]
public IMyService myService { get; set; }
public async Task OnGet() { ... }
public async Task OnPost() { ... }
}
توجه داشته باشید که اتریبیوت FromServices باید روی پراپرتی اعمال شود و پراپرتی پابلیک باشد.
رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!