जवाबों:
इस MSDN लेख और स्टैक ओवरफ़्लो पर एक उदाहरण का उपयोग देखें ।
मान लें कि आपके पास निम्न लाइनक / POCO वर्ग है:
public class Color
{
public int ColorId { get; set; }
public string Name { get; set; }
}
और मान लें कि आपके पास निम्न मॉडल है:
public class PageModel
{
public int MyColorId { get; set; }
}
और, अंत में, मान लें कि आपके पास रंगों की निम्नलिखित सूची है। वे एक स्थैतिक सूची, आदि से लिनक क्वेरी से आ सकते हैं।
public static IEnumerable<Color> Colors = new List<Color> {
new Color {
ColorId = 1,
Name = "Red"
},
new Color {
ColorId = 2,
Name = "Blue"
}
};
आपके विचार में, आप एक ड्रॉप डाउन सूची बना सकते हैं जैसे:
<%= Html.DropDownListFor(n => n.MyColorId,
new SelectList(Colors, "ColorId", "Name")) %>
<%:
Html.DropDownListFor(
model => model.Color,
new SelectList(
new List<Object>{
new { value = 0 , text = "Red" },
new { value = 1 , text = "Blue" },
new { value = 2 , text = "Green"}
},
"value",
"text",
Model.Color
)
)
%>
या आप कोई वर्ग नहीं लिख सकते, कुछ इस तरह से सीधे दृश्य में डाल सकते हैं।
मॉडल में एक शब्दकोश के साथ शुरू करने से बहुत मोटी ऊँगली से बचें
namespace EzPL8.Models
{
public class MyEggs
{
public Dictionary<int, string> Egg { get; set; }
public MyEggs()
{
Egg = new Dictionary<int, string>()
{
{ 0, "No Preference"},
{ 1, "I hate eggs"},
{ 2, "Over Easy"},
{ 3, "Sunny Side Up"},
{ 4, "Scrambled"},
{ 5, "Hard Boiled"},
{ 6, "Eggs Benedict"}
};
}
}
दृश्य में इसे प्रदर्शन के लिए सूची में परिवर्तित करें
@Html.DropDownListFor(m => m.Egg.Keys,
new SelectList(
Model.Egg,
"Key",
"Value"))
हाय यहाँ है कि मैं इसे एक परियोजना में कैसे किया:
@Html.DropDownListFor(model => model.MyOption,
new List<SelectListItem> {
new SelectListItem { Value = "0" , Text = "Option A" },
new SelectListItem { Value = "1" , Text = "Option B" },
new SelectListItem { Value = "2" , Text = "Option C" }
},
new { @class="myselect"})
मुझे उम्मीद है कि यह किसी को मदद करता है। धन्यवाद
या अगर यह एक डेटाबेस संदर्भ से है जिसका आप उपयोग कर सकते हैं
@Html.DropDownListFor(model => model.MyOption, db.MyOptions.Select(x => new SelectListItem { Text = x.Name, Value = x.Id.ToString() }))
"कृपया एक आइटम का चयन करें"
@Html.DropDownListFor(model => model.ContentManagement_Send_Section,
new List<SelectListItem> { new SelectListItem { Value = "0", Text = "Plese Select one Item" } }
.Concat(db.NameOfPaperSections.Select(x => new SelectListItem { Text = x.NameOfPaperSection, Value = x.PaperSectionID.ToString() })),
new { @class = "myselect" })
कोड से व्युत्पन्न: मास्टर प्रोग्रामर && योएल वाहलुंड ;
राजा संदर्भ: https://stackoverflow.com/a/1528193/1395101 JaredPar ;
धन्यवाद मास्टर प्रोग्रामर && योएल Wahlund && JaredPar ;
गुड लक दोस्तों।
@using (Html.BeginForm()) {
<p>Do you like pizza?
@Html.DropDownListFor(x => x.likesPizza, new[] {
new SelectListItem() {Text = "Yes", Value = bool.TrueString},
new SelectListItem() {Text = "No", Value = bool.FalseString}
}, "Choose an option")
</p>
<input type = "submit" value = "Submit my answer" />
}
मुझे लगता है कि यह उत्तर बरात के समान है, जिसमें आप अपने ड्रॉपडाउनलिस्ट के लिए सभी कोड सीधे दृश्य में डालते हैं। लेकिन मुझे लगता है कि यह ay / n (बूलियन) ड्रॉप डाउन सूची बनाने का एक कुशल तरीका है, इसलिए मैं इसे साझा करना चाहता था।
शुरुआती के लिए कुछ नोट:
आशा है कि यह किसी की मदद करता है,