نمایش نتایج 1 تا 4 از 4

نام تاپیک: Automapper در repository

  1. #1
    کاربر دائمی
    تاریخ عضویت
    مهر 1390
    محل زندگی
    rayancode.ir
    پست
    1,559

    Question Automapper در repository

    سلام دوستان.
    مثل اینکه mapper یک مقداری با automaper mvc5 تغیر کرده.
    من می خوام تو repository از ویو viewmodel بگیرم و اون رو با mapper بریزم تو model و بعد add دیتابیس کنم.


    کسی مقاله یا نمونه کدی داره؟؟

  2. #2

    نقل قول: Automapper در repository

    اول باید مشخص کنید که برای MVC5 می خواهید یا برای Core

    تغییر اساسی سیستم AutoMapper اینه که از این به بعد باید IMapper رو به عنوان تزریق کنید تا به اون دسترسی داشته باشید. قبلا یک کلاس استاتیک به نام Mapper بود که می تونست همه ی Map ها بارگذاری کنه ولی خیلی از برنامه نویسها با نوشتن کلاسهای خودشون سعی می کردن به جای کلاس استاتیک اون رو تزریق کنند. در نسخه های جدیدتر این اتفاق در خود فریم ورک افتاده.

    اول باید کلاس IMapper رو در سیستم تزریق وابستگی که دارید (Ninject و StructureMape و ...) ثبت کنید (Register) و بعد در هر کلاسی نیاز به AutoMapper داشتید باید IMapper رو تزریق کنید.


    IMapper mapper = AutoMapperBinder();
    kernel.Bind<IMapper>().ToConstant(mapper).InSingle tonScope();


    در ASP.NET Core یک سرویس مخصوص این کار قبلا پیاده شده کافیه Module مربوطه رو نصب کنید. و بعد در سرویس لود کنید.

    Install-Package AutoMapper.Extensions.Microsoft.DependencyInjectio n


    services.AddAutoMapper();


    پروژه ی MVC5 که در اون قبلا AutoMapper با Ninject تنظیم شده :
    https://github.com/codehaks/Portal-Net

    پروژه ی ASP.NET Core با AutoMapper :
    https://github.com/codehaks/Portal-Core-Fa

  3. #3
    کاربر دائمی
    تاریخ عضویت
    مهر 1390
    محل زندگی
    rayancode.ir
    پست
    1,559

    نقل قول: Automapper در repository

    نقل قول نوشته شده توسط hakim22 مشاهده تاپیک
    اول باید مشخص کنید که برای MVC5 می خواهید یا برای Core

    تغییر اساسی سیستم AutoMapper اینه که از این به بعد باید IMapper رو به عنوان تزریق کنید تا به اون دسترسی داشته باشید. قبلا یک کلاس استاتیک به نام Mapper بود که می تونست همه ی Map ها بارگذاری کنه ولی خیلی از برنامه نویسها با نوشتن کلاسهای خودشون سعی می کردن به جای کلاس استاتیک اون رو تزریق کنند. در نسخه های جدیدتر این اتفاق در خود فریم ورک افتاده.

    اول باید کلاس IMapper رو در سیستم تزریق وابستگی که دارید (Ninject و StructureMape و ...) ثبت کنید (Register) و بعد در هر کلاسی نیاز به AutoMapper داشتید باید IMapper رو تزریق کنید.


    IMapper mapper = AutoMapperBinder();
    kernel.Bind<IMapper>().ToConstant(mapper).InSingle tonScope();


    در ASP.NET Core یک سرویس مخصوص این کار قبلا پیاده شده کافیه Module مربوطه رو نصب کنید. و بعد در سرویس لود کنید.




    services.AddAutoMapper();


    پروژه ی MVC5 که در اون قبلا AutoMapper با Ninject تنظیم شده :
    https://github.com/codehaks/Portal-Net

    پروژه ی ASP.NET Core با AutoMapper :
    https://github.com/codehaks/Portal-Core-Fa

    سلام.
    بله این کار رو انجام دادم و تنظیم کردم. اما یه مشکلی که هست اینه که باید یک کلاس


    public class AutomapperDomin: Profile
    {
    public AutomapperDomin()
    {
    CreateMap<Group, GroupViewmodel>();
    CreateMap<GroupViewmodel, Group>();
    }
    }


    می خواستم بدونم این تنها روش مپ کردنه؟؟

  4. #4

    نقل قول: Automapper در repository

    این روشی هست که خود AutoMapper استفاده میکنه.البته من دیدم که با ترفندهایی میان و AutoMapper رو میبرن داخل خود Model و ViewModel که مستقل از سیستم مرکزی عمل کنه. به نظر من این کار پروژه رو خیلی شلوغتر میکنه.

تاپیک های مشابه

  1. حرفه ای: آمورش استفاده از AutoMapper در Asp MVC Core
    نوشته شده توسط میلاد رئیسی در بخش ASP.NET MVC
    پاسخ: 1
    آخرین پست: جمعه 06 مرداد 1396, 11:43 صبح
  2. AutoMapper در فیلدهای ICollation<>
    نوشته شده توسط haamidd در بخش ASP.NET MVC
    پاسخ: 0
    آخرین پست: شنبه 21 آذر 1394, 16:22 عصر
  3. پاسخ: 2
    آخرین پست: شنبه 20 اسفند 1390, 11:12 صبح
  4. حرفه ای: مشکل در نوشتن تابع GetQuery کتابخانه Generic EF4 Repository
    نوشته شده توسط puvinax در بخش C#‎‎
    پاسخ: 0
    آخرین پست: دوشنبه 09 آبان 1390, 18:47 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •