ویرگول
ورودثبت نام
آرمان
آرمان
خواندن ۱ دقیقه·۶ سال پیش

جلوگیری از کار های تکراری در ویو ها

برای جلوگیری از کدهای تکراری سی شارپ در ویو ها از view start و برای جلوگیری از فضای نام و دستورات تکراری از view import استفاده میکنیم

می توانید یک فایل razor view start در فلدر Pages بسازید این فایل (_ViewStart.cshtml) با نام رزرو شده می باشد که درون خودش یک Layout با نام پیشفرص _layout دارد ،صفحاتی که برای آن ها Layout تعریف نشده باشد layout این فایل برای آنها ست میشود.

@{ Layout="_Layout"; }

اما واقعیت اینکه این فایل کاربیشتر از آنچه که فکر میکنید(ست کردن layout پیشفرض) انجایم میدهد. در واقع در این فایل (ViewStart.cshtml) هر کدی که در @{} قرار بدهید در تمامی صفحات همین فلدر (Pages) و صفحات فلدرهای زیرین (منظورم sub folder هست) قرار میگیرد.
پس با وجود فایل view start میتوانیم از کد های تکراری جلوگیری کنیم




یک فایل دیگری هم داریم که خصوصایتی مانند view start دارد (نام رزرو شده)و تنها فرقی که می کند برای ایمپورت کردن فضای نام ها و directive (دستورات) ها به کار برده میشود که نام آن _ViewImports.cshtml است._ViewImports.cshtml :

@using TopsyTurvyCakes.Models @namespace TopsyTurvyCakes.Pages @addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

این دستورات و فضای نام ها در تمام صفحات ایمپورت شده اند. با این فایل میتوانیم از تکرار دستورات و فضای نام ها در صفحات مختلف جلوگیری کنیم.




نکته کد ها و دستوراتی و وفضای نام هایی که واقعا پرتکرار هستند را درون این فایل ها قرار دهید. مثلا اگر در یک صفحه فقط نیاز به یک فضای نام هست بهتر است که در بالای همون صفحه نوشته شود.

razor pagesasp net mvc core
یک برنامه نویس که هرآنچه را که یاد میگیرد در دفترچه یادداشت ویرگولیش یادداشت میکرد(!) حتی یک خط ! تا درصورت نیاز به آن رجوع کند...
شاید از این پست‌ها خوشتان بیاید