Hva er den riktige måten å opprette egendefinerte modell permer i MVC6?

stemmer
2

Jeg prøver å følge trinnene i denne artikkelen ved å bruke en vNext prosjekt og MVC 6. Jeg har lest gjennom koden her , men fortsatt litt usikker på hvordan å gjennomføre dette.

Er det noen som har en fungerende eksempel de kunne dele eller peke meg i riktig retning?

Jeg spesielt lurer på hvordan du registrerer det egendefinerte bindemiddel, og hvilke klasser jeg ville arve fra siden DefaultModelBinder er ikke tilgjengelig.

Publisert på 12/12/2014 klokken 16:44
kilden bruker
På andre språk...                            


3 svar

stemmer
5

Eksempel modell bindemiddel: https://github.com/aspnet/Mvc/blob/dev/src/Microsoft.AspNet.Mvc.Core/ModelBinding/CancellationTokenModelBinder.cs

Hvordan registrere bindemiddel i Startup.cs

public void ConfigureServices(IServiceCollection services) 
{ 
    services.AddMvc().Configure<MvcOptions>(options => 
    { 
        options.ModelBinders.Add(typeof(MyModelBinder)); 
    });
Svarte 12/12/2014 kl. 17:13
kilden bruker

stemmer
1

Jeg har gjort et blogginnlegg som inneholder eksempel på trimming strenger automatisk i modellen.

Blogginnlegg er her http://hotzblog.com/asp-net-vnext-defaultmodelbinder-and-automatic-viewmodel-string-trim/

Jeg la merke til at å legge direkte til modellbindemidler vil ikke fungere helt, fordi modellbindemidler brukes i orden. Du må først fjerne den opprinnelige modellen bindemiddel

  services.AddMvc().Configure(options =>
  {
       // Replace MutableObjectModelBinder with extended Trimmer version
       IModelBinder originalBinder = options.ModelBinders.FirstOrDefault(x=>x.GetType() == typeof(MutableObjectModelBinder));
       int binderIndex = options.ModelBinders.IndexOf(originalBinder);
       options.ModelBinders.Remove(originalBinder);
       options.ModelBinders.Insert(binderIndex, new TrimmingModelBinder());
   });
Svarte 28/02/2016 kl. 22:12
kilden bruker

stemmer
0

Dette er min gjennomføring av MVC 6 RC1tilpassede Model Binderselv om jeg må innrømme at det ikke er perfekt ennå. For noen grunn getterstil ViewModeler å bli truffet før verdiene er bundet til dem, så vi må legge til if (xID == 0)kontroller, som er halt ... og jeg er fortsatt på utkikk etter en løsning, anyways, dette burde hjelpe ut noen: https: //github.com/Serjster/IOCModelBinderExample

Føl deg fri til å bidra hvis du tilfeldigvis å finne en løsning.

Svarte 27/07/2016 kl. 16:37
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more