我mvc4使用實體DB頭(剃刀)填充@ html.listboxfor使用存儲過程
要求:我已經回SP ID和顯示名稱, 我需要顯示在@html名稱。 listboxfor 我用接口從存儲過程中獲取詳細信息。當我從存儲過程中得到控制器的結果時,我將結果保存到列表框, 我無法弄清楚如何將它存儲在列表框中。 我碰到了控制器代碼。請幫忙。
代碼:
public class projService :Iproj
{
project dbContext;
public projService()
{
dbContext = new projectEntities();
}
public List<GetResourceOrderDisplay_Result> Getresorderdisplay()
{
List<GetResourceOrderDisplay_Result> oGetresorderdisplay = new List<GetResourceOrderDisplay_Result>();
oGetresorderdisplay = dbContext.GetResourceOrderDisplay().ToList();
return oGetresorderdisplay.ToList();
}
}
控制器:
public ActionResult testview()
{
List<GetResourceOrderDisplay_Result> listboxdata = new List<GetResourceOrderDisplay_Result>();
listboxdata = _Scheduler.Getresorderdisplay();
ListboxViewModel objListboxViewModel = new ListboxViewModel();
//struck with the follwing line.
objListboxViewModel.resourcename=listboxdata ????
return View(objListboxViewModel);
}
視圖:
@model project.ViewModels.ListboxViewModel
@Html.ListBoxFor(m=> m.resourcename,Model.resourcename, new { @class = "resList",style="height: 462px;"})
模型:
public class ListboxViewModel
{
public string resourceid{get; set; }
//listbox Values
public List<SelectListItem> resourcename{get; set;}
}
編輯:GetResourceOrderDisplay_Result
using System;
using System.Collections.Generic;
namespace proj.Data
{
public partial class GetResourceOrderDisplay_Result
{
public int ID { get; set; }
public string DisplayName { get; set; }
}
}
EDIT2: 這是更新後,我發現了錯誤:
**Edit 3:**
感謝一噸。如何從sp獲取文本和值的值,同時檢查我的更新。 – gs11111
@ gs11111像這樣'listboxdata.Select(x => new SelectListItem(){Text = x.DisplayName,Value = x.ID});' – asymptoticFault
我在listboxdata :(。請檢查我的更新。 – gs11111