PDA

View Full Version : سوال: custom view engine



mbasirati
شنبه 25 مهر 1394, 12:23 عصر
سلام
چطوری میشه کدهای تولیدی view که موقع ایجاد controller ساخته میشه رو کاستم کنیم.
برای مثال موقعی که ویوی index رو خود mvc ایجاد میکنه سه تا اکشن لینک Edit | Details | Delete میسازه که من میخوام اینا رو به شکلی که خودم میخوام ایجاد کنه و مجبور نباشم هردفعه برای هر ویوی index اینا رو تغییر بدم.
چطور میتونم اینکارو انجام بدم؟

hakim22
شنبه 25 مهر 1394, 21:41 عصر
این کدهایی که ساخته میشه با استفاده از T4 ساخته میشه . برای هر قستی که کد ساخته میشه در مسیر نصب ویژوال استودیو یک سری فایل هست که با تغییر اون میتوانید
این کدها یا اصطلاحا Scaffolding هارو تغییر بدید. برای نسخه های مختلف مسیرش عوض شده

برای MVC5 باید اینجا باشه :


C:\Program Files\Microsoft Visual Studio 12.0\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaf folding\Templates


شما هم میتوانید اصل فایلهارو در همون مسیر تغییر بدید هم میتوانید یک کپی از اون فایلهارو به به صورت یک فولدر با نام CodeTemplate به پروژه اضافه کنید.
ویژوال استودیو اول در خود پروژه به دنبال Scaffolding میگرده بعد سراغ فولدر اصلی میره. دقت کنید که عین مسیر رو باید در پروژه ی خودتون شبیه سازی کنید.

برای پروژه های #C نیازی به فایلهلی VB ندارید. اونهارو حذف کنید.

برای تغییرات زیاد در فایلها باید با T4 آشنایی داشته باشید ولی برای ویرایش مختصر و تغییر نام و ... میتوانید به راحتی اینکارو انجام بدید.

mbasirati
دوشنبه 04 آبان 1394, 10:47 صبح
برای استفاده بقیه دوستان عرض میکنم:
برای اینکه فولدر CodeTemplates رو با تمامی محتواش توی پروژه خودتون اضافه کنید و بعد ویوها را برای پروژه کاستم کنید کافیه از کنسول دستور زیر رو اجرا کنید تا خودش به پروژه اد بشه و لازم نیس دستی این کارو انجام بدید:

Install-Package Mvc5CodeTemplatesCSharp

asdos90
سه شنبه 05 آبان 1394, 09:07 صبح
باسلام
ممنون از راهنماییهاتون
لطفا اگه ممکنش هست همین مورد را در ASP.NET5 توضیح دهید.
با تشکر