Ok, je sais qu'il me manque quelque chose de vraiment simple ici, donc peut-être qu'un ensemble supplémentaire d'yeux aidera. J'ai une classe POCO (State) dans mon DAL, et dans mon application MVC j'essaye de lier cela à un DropDownList, mais quand il charge tout ce que je reçois est WeddingPhotographer.Models.BusinessObjects.State dans mon DropDownList 50 fois . Voici le code de la classe POCO:Lier à DropDownList dans MVC 2
public partial class State
{
public virtual int Key
{
get;
set;
}
public virtual string StateAbbreviation
{
get;
set;
}
public virtual string StateName
{
get;
set;
}
}
est ici le code de mon Business Object (utilisation terme légèrement)
public class State
{
public int Key { get; set; }
public string StateName { get; set; }
public string StateAbbreviation { get; set; }
}
public class StateList
{
private static IRepository<WeddingPhotographer.Data.Model.State> states = ObjectFactory.GetInstance<IRepository<WeddingPhotographer.Data.Model.State>>();
static readonly IList<State> stateList = new List<State>();
public static IEnumerable<State> States
{
get
{
foreach (WeddingPhotographer.Data.Model.State s in states.GetAll())
{
stateList.Add(new State
{
Key = s.Key,
StateName = s.StateName,
StateAbbreviation = s.StateAbbreviation
});
}
return stateList;
}
}
}
Alors mes états DROPDOWNLIST contrôle
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<WeddingPhotographer.Models.BusinessObjects.State>" %>
<%: Html.DropDownList("StatesDropDown", new SelectList(WeddingPhotographer.Helpers.StateList.States,Model))%>
Et enfin comment je le charge
<div class="editor-field">
<% Html.RenderPartial("StatesDropDown"); %>
<%= Html.ValidationMessageFor(m => m.State) %>
</div>
Je sais que je manque quelque chose de simple ici (relativement nouveau pour MVC donc toujours essayer de faire avancer les choses à droite)
Je ne suis pas certain de comprendre ce que vous dites – PsychoCoder
Voulez-vous dire si la liste est * NOT * null? Ajoutez uniquement des éléments dans votre liste de sélection qui ne sont pas null, puis lorsque vous vous connectez à votre liste de sélection, aucun élément null n'y figure car ils ont tous été vérifiés avant de les ajouter à la liste de sélection. – BenAlabaster