I have a classes like this:
public class member
{
public string name {get;set;}
public IList<Note> notes {get;set;}
}
public class note
{
public string text {get;set;}
public datetime created {get;set;}
}
I want to have a page which inserts the member class – which i am fine with. My question lies in how to go about adding multiple notes to the member on the same page?
What would be the best way to go about this? (maybe some ajax solution to show sub forms for the note class)
Can anyone point me in the right direction of some related examples learning material?
Thanks in advance.
I’d create an Ajax form that posts to a method called
AddNote(AddNoteViewModel viewModel)on your controller. AddNoteViewModel would contain all the information you need to create a new note. The AddNote Action Method would add the new note, SaveChanges and return a list of notes for the given Member. You can use a partial view for the content that is returned from AddNote.On the Ajax form you should set
UpdateTargetIdto the id of the<div>you want to update with the latest list of notes.Another option might be to use JQuery.
Here is a good example of both: Using Ajax.BeginForm with ASP.NET MVC 3 Razor
UPDATE : I’ve adapted Darin Dimitrov’s example (from the link) to suit your scenario. This is off the top of my head so won’t be perfect but it should give you a decent starting point
Model:
Controller:
View:
Using JQuery:
View:
index.js: