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

نام تاپیک: استفاده از AutoMapper

  1. #1
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    استفاده از AutoMapper

    با سلام
    اگر دوستان با AutoMapper کار کردید ، نحوه استفاده از اون رو توضیح بدید.
    من از ناگت نصب کردم و موقع استفاده خطا میده :
    Mapper not initialized. Call Initialize with appropriate configuration. If you are trying to use mapper instances through a container or otherwise, make sure you do not have any calls to the static Mapper.Map methods, and if you're using ProjectTo or UseAsDataSource extension methods, make sure you pass in the appropriate IConfigurationProvider instance.

    ProjectAttributeDb projectAttributeDb = new ProjectAttributeDb();
    ProjectAttribute projectAttribute = projectAttributeDb.GetProjectAttribute(id);
    ProjectAttributeViewModel model = new ProjectAttributeViewModel();
    AutoMapper.Mapper.Map(projectAttribute, model);
    return View(model);

    خطا مربوط به کانفیگ نشدن AutoMapper هست که من انجامش ندادم.
    با تشکر

  2. #2
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: استفاده از AutoMapper

    برای بکارگیری automapper به دو صورت یکی از کلاس استاتیک Mapper استفاده میکینم یا از MapperConfiguration

    فرض کنیم دو کلاس داریم Model و ViewModel
    کلاس Model سورس هست
    یک لیست فرضی میسازیم

    var list = new List<Model>
    {
    new Model { Id = 1, FirstName = "ali" },
    new Model { Id = 2, FirstName = "reza" },
    };
    Mapper.Initialize(cfg => cfg.CreateMap<Model, ViewModel>());
    var mapps = Mapper.Map(list, new List<ViewModel>());
    foreach (var m in mapps)
    {
    Console.WriteLine(m.FirstName);
    }


    میتونید سطر آبی رنگ را در استارت آپ صدا بزنید تا هر بار نیاز به نوشتن آن در قسمهای برنامه نباشید
    روش دیگه بکارگیری MapperConfiguration هست


    var list = new List<Model>
    {
    new Model { Id = 1, FirstName = "ali" },
    new Model { Id = 2, FirstName = "reza" },
    };

    var config = new MapperConfiguration(cfg => cfg.CreateMap<Model, ViewModel>());
    var mapper = config.CreateMapper();
    var mapps = mapper.Map<List<ViewModel>>(list);
    foreach (var m in mapps)
    {
    Console.WriteLine(m.FirstName);
    }


    روش ارجح تر بکارگیری IMapper هست که باید از تزریق وابستگی استفاده کرد
    در این روش باید از یکی IOC های مشهور مانند StructureMap یا Ninject یا Simple Injector یا Unity جهت Register کردن Automapper استفاده میکنیم
    منبع یادگیری
    http://docs.automapper.org/en/stable...g-started.html

  3. #3
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1393
    محل زندگی
    ایران
    پست
    487

    نقل قول: استفاده از AutoMapper

    سپاس از راهنمایی کاملتون.

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

  1. آموزش: آموزش استفاده از AutoMapper و رهایی از بند تکرار
    نوشته شده توسط hakim22 در بخش ASP.NET MVC
    پاسخ: 5
    آخرین پست: دوشنبه 07 فروردین 1402, 12:49 عصر
  2. حرفه ای: آمورش استفاده از AutoMapper در Asp MVC Core
    نوشته شده توسط میلاد رئیسی در بخش ASP.NET MVC
    پاسخ: 1
    آخرین پست: جمعه 06 مرداد 1396, 11:43 صبح
  3. پاسخ: 3
    آخرین پست: سه شنبه 12 آبان 1394, 20:21 عصر

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

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