I have a situation in ASP.NET MVC 2 where I have a form whose fields are based on info supplied by a view model, but whose posted data is a subset of that data represented by a slimmer edit model. I'd like to add simple data annotation validation to the edit model, but since the view is based on the view model, I'm not sure how to proceed.
How to handle model validation when the bound edit model != view model
176 views Asked by Major Productions At
1
There are 1 answers
Related Questions in ASP.NET-MVC-2
- The controller for path '/' could not be found or it does not implement IController
- how to add bootstrap template to ASP.net MVC 2 project
- Suggestion with MVC2 DI and migrating a legacy system
- Upgrading from MVC2 to MVC5 project
- The IControllerFactory 'Munq.MVC.MunqControllerFactory' did not return a controller for the name 'Home'
- Showing Bootstap Model to Create Form with Some Parameters
- System.OutOfMemoryException when tried with 70 files SharpZipLib
- Find All Extension Methods for HTMLHelper, URLHelper and AJAXHelper Types
- Active Directory with multi factor authentication for an existing web application
- How to receive an array in AJAX send from the ASP .NET controller?
- How do I create an empty model to pass to an insert-update view when there are more than on model in the dbcontext?
- Binding List of Lists in MVC 2.0
- how to use google calendar api in .net MVC 2 using this sample https://developers.google.com/calendar/quickstart/dotnet
- How to override default required error message
- Automatically add column to data table according to week
Related Questions in VIEWMODEL
- Why do I get 'Failed to instantiate a ViewModel' when passing ViewModel class as an argument to a composable?
- Changes to my model/viewmodel are not charging what's on my view
- Android Koin - not found after update to 3.2.0
- Splash Screen Android XML
- Referencing SD card from Kotlin
- Proper way to return value from custom UserControl's DependencyProperty and uses viewModel?
- Blazor two-way data binding with InputSelect never enters VM property set
- LiveData Observer is not working in jetpack compose
- RelayCommand (MVVM Toolkit) Simple Demo explaination
- Hello i have created 3 viewModels and want to connect them to a single View(UI) but can't
- How to asynchronously update UI-related @Published variables in ViewModel?
- QueryProperty on ViewModel gets assigned to variable too late in .NET MAUI?
- Cannot create an instance of com.example.project.mainViewModel when using Jetpack Compose
- GUI doesn't update while running
- How to pass result from viewModelScope to activity
Related Questions in VALIDATION
- Terraform valdiate that one of N variables is set to "true"
- How to validate if Confirm Password is same or not with the Password in React Native using ValidateJS?
- How to create yup schema for dynamic array of different objects
- Quintic Number Number Counting Hash Function
- DropdownButtonFormField doesn't apply custom InputDecoration style
- Is there a way to set a cells value based on the value this cell held at a certain time, even when the cell value changes over time?
- Multiple regex expressions to check mobile number in javascript
- Java Pojos - Setter-Call (Field Touched) Detection
- Input Field Required
- Angular restore ngModel input field to it's previous value
- Bean Validaton : org.springframework.web.bind.MethodArgumentNotValidException
- javax validation not working on spring boot
- How to show warning message for unmatched confirm password
- Flutter TextFormField validation with Firestore
- eval_set in CatBoostRegressor
Related Questions in EDITMODEL
- Jqgrid custom formatter and edit mode
- Map EditModel using Automapper
- can't update an existing record in CakePHP
- How to mutate editmodel/postmodel to domain model
- Popup Calendar in edit mode of asp.net gridview
- How should I map Edit Models to Domain Models
- How to handle model validation when the bound edit model != view model
- Reference implementation of ASP.NET MVC using ViewModels, EditModels, and AutoMapper
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
View model and controller action parameters don't have to be the same.
In your case this means that you may be using a richer model class to generate your view (and maybe even posting more information than needed) but your controller action would only use some information from that posted data to populate a simpler application model object instance. No problem. As long as field naming will suffice to populate properties correctly.
You may have these two classes:
and then your view would be using
Personand your controller action would have a parameter of typeUser. Fine. It will work.There's no need for these classes to inherit each other either. I've just made it so in this simple example because this way they both share common property names. But otherwise they don't have to be related in any way shape or form as long as posted field names will be able to model bind to controller action parameter class properties.