C# - ViewModel Validation For A List?
Feb 28, 2011
I have the following viewmodel definition
public class AccessRequestViewModel
{
public Request Request { get; private set; }
public SelectList Buildings { get; private set; }
public List<Person> Persons { get; private set; }
}
So in my application there must be at least 1 person for an access request. What approach might you use to validate? I don't want this validation to happen in my controller which would be simple to do. Is the only choice a custom validation attribute?
Edit: Currently performing this validation with FluentValidation (nice library!)
RuleFor(vm => vm.Persons)
.Must((vm, person) => person.Count > 0)
.WithMessage("At least one person is required");
View 4 Replies
Similar Messages:
Jun 20, 2010
I have used IDataErrorInfo Validation for my Model.
But when I use these model classes inside a view model, the validation does not happen.
sample viewmodel below
[code]....
Now, if Category or Subcategory classes are directly used as models for view, the validation works fine. But, if CategoryViewModel is used, no validation occurs.
View 1 Replies
Jul 14, 2010
http://weblogs.asp.net/shijuvarghese/archive/2010/02/01/view-model-pattern-and-automapper-in-asp-net-mvc-applications.aspxThat's Great, but it is in #C like every other tutorial I find. Note his ContactViewModelWell here is mine:
[Code]....
How do I add validation in the same fashion as he did in his blog in VB?
View 6 Replies
Jan 11, 2011
I have a viewmodel with a property of a model class type. I set some properties in the model class to be able to show it to the user but then when I make a post, the model gets validated. How to overcome this? I don't want to enforce the DataAnnotations contraint in this case....
public class TheViewModel
{
TheModel TheModel { get; set;}
}
[code]...
View 1 Replies
Dec 9, 2010
I use viewModels to communicate between my controller and my view. To get model validation, i use a partial class like this :
[MetadataType(typeof(EvaluationValidation))]
public partial class Evaluation
{
public class EvaluationValidation
{
[DisplayName("Title of evaluation")]
[Code]....
View 1 Replies
Jun 8, 2010
point out an example or tutorial online that shows where data validation is done in the viewmodelas against the model? i saw a number of posts where that method is recommended..i dont really agree with it but i would like to see how it would work out..
View 2 Replies
Apr 12, 2010
I am trying to create a view that would contain a set of fields that tie to an AgencyAddress object, an add button, and under those fields, a list of AgencyAddress that would show addresses that were added. My view works, and the fields are properly bound, however I can't seem to get the list to maintain previously added addresses.
What happens, is that every time the Add button is pressed, the List is re-created (or VS yells at me to create a new instance) and only contains one record. I'm sure I'm missing something simple, but I can't figure out how to pass the list back and forth and be able to add to it. Two weeks on my own is where I draw the line! My ViewModel:
[Code]....
My Create controller action (HTTP Get) is here:
[Code]....
And finally, my HTTP Post Create action:
[Code]....
The loop in the view that should show addresses:
[Code]....
View 3 Replies
Jan 19, 2011
I need to perform a validation to check whether a TextBox value is empty on Dropown list selected Index change using validation controls in asp.net
View 1 Replies
Aug 14, 2010
I have a problem of Validation still present for list object that have been dynamically deleted in the View. Here is the scenario. In my model I have a list. This list can be added and deleted dynamically in create and edit views. Lets say I am in the create view. I add two list objects dynamically and start filing the object and submit the form. The model validation fails in the server side (client side validation cannot be done as it involes some complex logic) because of some errors. Now the errors are being disaplayed for the two objects. Now I delete the first list object dynamically and correct the errors in the second list object and try to submit but the form will not submit because, the client side validation still thinks that the first list object is still present. Is there anyway to remove the client validation for objects that have been removed dynamically ?
My model
Contact.cs:
public class contact{
public List<Address> address;
}
Steps for the problem.
1. Create two addresses in the create view.
2. Fill the fields and click submit.
3. Server side Model validation will report errors for fields.
4. Delete the first Address and correct the errors in the second object and click submit.
5. Submit will not work because the client side validation expects the errors to be corrected in the first Address which has been deleted.
View 5 Replies
Sep 15, 2010
i have a form which asks for date of birth. find below the code.
<asp:DropDownList ID="ddlDay" runat="server">
</asp:DropDownList>
<asp:DropDownList ID="ddlMonth" runat="server">
[Code]....
The dropdownlist is populated in code behind. The client and server validation code is,
function valDate_ClientValidate(source, args) {
var dd_id = document.getElementById("<%=ddlDay.ClientID %>");
var mm_id = document.getElementById("<%=ddlMonth.ClientID %>");
[Code]....
When i open this page and select the dropdown DD, an asterisk appears showing the error message. But i dont need this one,as the error should appear only when the form is submitted.
View 9 Replies
Jan 15, 2010
I have a dropdown list control which I populate at run time with the first item being like "-- Select an Item --", for example. I need the user to select an item from the list apart from the first item displayed. I tried using required field validators and setting the InitialValue property to "-- Select an Item --". But this does not seem to work. dropdown list is programmtically populated based on certain decisions presented to the user.
View 5 Replies
Mar 19, 2010
I'm trying to write a custom validation on a set of radiobutton list where if certain radio button is selected, a specified checkbox needs to be fill in with certain amount.
Code:
<asp:CustomValidator ID="CustomValidator1" runat="server" OnServerValidate="CustomValidator1_ServerValidate" ClientValidationFunction="CheckAmt" ControlToValidate="txtAmt" Display="Dynamic" ErrorMessage="Enter contribution amount" SetFocusOnError="True" Enabled = "true" ValidationGroup="GiftValidate"></asp:CustomValidator><br />
Code:
[code]....
View 12 Replies
Nov 22, 2010
link to Implement ASP.net mVC2 validation for my dropdown list boxes in my view?My Dropdown listbox in my view is something like this
<%: Html.DropDownListFor(model => model.SelectedStudent, new SelectList(Model.StudentIDs, "ID", "Name"),"Please select..", new { id="Student", style = "width:190px;" })%>
[code]...
View 1 Replies
Mar 19, 2011
We have a page with quite a few textboxes and a dropdown list at the end. The dropdown list at the end is a "Result" and dependant on the result certain textboxes need to be filled in and this needs to be checked when they submit the page. I was thinking of using a custom validator
View 3 Replies
Sep 8, 2010
How do I list all generated errors in the same div?
Something like this:
<div id="errors">
<ul>
<li>Email is invalid</li>
<li>Firstname is required</li>
</ul>
</div>
View 1 Replies
Jul 14, 2010
now i am facing the problem to validate the checkboxlist is displaying dynamically, acutally at my present page i am doing the checkboxlist which is controled by another check box for the checkboxlist items for select and deselect, now i need to handle the validation for this checkboxlist for null value
[Code]....
View 2 Replies
Oct 10, 2010
i have multiple drop down lists and using the DataBount event to insert an initial value to populate the drop down list, which does exactly what i want it to do. however, now i have put a required validation control on it and the validation never gets triggered because of my value i insert using this code below. anyway i can get my validation control to avoid the databout value?
[Code]....
View 2 Replies
Dec 25, 2010
I am using one datalist control for uploading multiple images.I hv used one Asp:FileUplaod Control and one button in one itemtemplate.I am using reqired field validator and regular expression validator for file upload cntrl I am assigning validation group for both of them on ItemDataBound event of my datalist so that each upload cntrl hv same validaton group as required field and regular expression validator.Now what i want to do is - i want to show my error message in validation summary which is right at the top of the page.I want one know how to write javascript that will assign validation group of my control in datalist on which i click ?
View 1 Replies
Jun 15, 2010
n a form I have multiple group of controls which are grouped using validation group property. I want to assign validation group to asp.Button dynamically on client side using javascript on the base of item selected in drop down list.
Here is JavaScript which I am using, but it is not working. It shows validation group undefined but actually a default group is defined.
<script type="text/JavaScript">
function NextClicked() {
var _ddlStatus = document.getElementById("<%=ddl.ClientID%>");
var _selectedIndex = _ddlStatus.selectedIndex;
var _btn = document.getElementById("<%=btnNext.ClientID%>");
alert(_btn.ValidationGroup); // here in messge it shows undefiend, yet I have defiend a group in button as default.
if (_selectedIndex == 1) {
_btn.ValidationGroup = "G1";
}
if (_selectedIndex == 2) {
_btn.ValidationGroup = "G2";
}
}
View 1 Replies
Feb 16, 2010
its said that 1 ViewModel has 1 View. 1 View is for me a UserControl. What if my UserControl has different areas filled with data from different entities, do I have then several Views and need to build several ViewModels? e.g: I display in a UserControl 3 entities: customer(listbox),order(datagrid),product(datagrid). Each of those "data areas" has add+remove buttons and textboxes to enter data.
Actually each of those "data areas" are put in its own GRID having so the posibility to set a individual datacontext.
1.) Should I now create 3 ViewModels CustomerVM,OrderVM and ProductVM?
2.) Are those 3 "data areas" seen as an own sort of separated View, although I have not put them in 3 UserControls.xaml files ???
3.) When this one UserControl is inside a TabControl`s tabpage where do I load the 3 entities related data? Inside the MainViewModel? I want to show/load that data only when the user clicks the tabheader.
View 1 Replies
Jan 30, 2010
I have 2 properties in my ViewModel
class ViewModel1
{
Dictonary<int, string> PossibleValues {get;set;}//key/value
int SelectedKey {get;set}
}
I want to edit this using a Html.DropDownListFor I want to get MVC to auto serialize the data into/from the ViewModel so I can the following
public ActionResult Edit(ViewModel1 model) ...
View 3 Replies
Mar 3, 2011
I'm new to .Net development, and now are following NerdDinner tutorial. Just wondering if any of you would be able to tell me What is the differences between ViewData and ViewModel(all I know is they are used to pass some form of data from controller to view) and perhaps tell me on what situation should I use ViewData instead of ViewModel and vice versa
View 1 Replies
Mar 2, 2010
[HttpPost]
public ActionResult Edit(int id, FormCollection fc)
{
Movie movie =
(
from m in _ctx.Movie.Include("MovieActors")
where m.MovieID == id select m
).First();
MovieActorViewModel movieActor = new MovieActorViewModel(movie);
if (TryUpdateModel(movieActor))
{
_ctx.ApplyPropertyChanges(movieActor.Movie.EntityKey.EntitySetName,
movieActor.Movie);
_ctx.SaveChanges();
}
return View(movieActor);
}
However, I am not sure how to test this, and in general would much rather have the method take a typed model like:[HttpPost] public ActionResult Edit(MovieActorViewModel movieActor) Is this possible? What changes to my MovieActorViewModel class do I need to make in order to enable this? That class looks like this:
public class MovieActorViewModel
{
public Movie Movie { get; set; }
public Actor Actor { get; set; }
public PublisherDealViewModel(Movie movie)
{
this.Movie = movie;
this.Actor =
(
from a in this.Movie.Actors
where a.ActorID == 1 select a
).First();
}
}
The view is typed (inherits ViewPage) simple:
<% using (Html.BeginForm()) {%>
Movie Title: <%= Html.TextBoxFor(model=>model.Movie.Title) %><br/>
Actor Name: <%= Html.TextBoxFor(model=>model.Actor.Name) %>
<% } %>
View 3 Replies
Jan 9, 2011
I'm trying to get my own viewmodel after submit my form and I got the following error:
"Unable to cast object of type 'System.String[]' to type 'System.String'"
This is my code:
ViewMode:
public class SoftwarePackages
{
public string[] PermissionsList { get; set; }[code].....
View 3 Replies
Jan 19, 2010
A table can be used to automatically sense Model. But when I get more than one table after the SQL query is a DataTable. When this DataTable to return View (DataTable) later. In the aspx file, can automatically perceive it as the Model, as the self-paragraphs?
[Code]....
View 4 Replies