使用存储过程填充@ html.listbox

gs11111

我首先在mvc4(razor)中将实体与db一起使用

要求:我有sp返回ID和显示名称,我需要在@ html.listbox中显示名称,因为我使用了接口从存储过程中获取详细信息。当我从存储过程中获得了控制器中的结果时,我对保存感到震惊结果到列表框,我不知道如何将其存储在列表框中。我被控制器代码打扰了,请帮忙。

代码:

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:**

在此处输入图片说明

渐近故障

基本上,您需要做的就是将您从数据库中检索到的列表数据转换为一个List<SelectListItem>可以显示的列表数据Linq Select方法使此操作非常简单:

objListboxViewModel.resourcename =
    listboxdata.Select(x => new SelectListItem() { Text = x.DisplayName,
                                                   Value = x.ID.ToString() })
               .ToList();

因此,将TextValue属性设置为什么取决于GetResourceOrderDisplay_Result外观的定义和属性。Select方法中,x代表listboxdata列表的单个元素,并且属于类型GetResourceOrderDisplay_Result,因此您可以访问的属性x.PropertySelect以这种方式构成方法将返回一个新的列表SelectListItem

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用mvc 4用Ajax结果填充Html.Listbox

来自分类Dev

从行数组填充ListBox

来自分类Dev

Json填充Dual ListBox

来自分类Dev

Json填充Dual ListBox

来自分类Dev

Windows Phone-使用Json填充ListBox

来自分类Dev

使用 DataBinding 的 ListBox 填充速度极慢

来自分类Dev

在jQuery中使用ListBox

来自分类Dev

填充ListBox DataTemplate的性能更好

来自分类Dev

如何填充backgroundworker中的ListBox?

来自分类Dev

VBA-无法填充ListBox

来自分类Dev

VBA - 从多个 ListObjects 填充 ListBox

来自分类Dev

MVC 4 ListBox填充另一个ListBox

来自分类Dev

使用保存在本地存储中的数据填充HTML表单

来自分类Dev

如何使用本地存储值填充多个HTML DOM元素

来自分类Dev

如何使用存储过程填充Selectlist

来自分类Dev

在VB.Net上使用参数化查询填充ListBox

来自分类Dev

将html列表框更改为Html.ListBox

来自分类Dev

Excel VBA根据Listbox2选择填充Listbox1

来自分类Dev

使用ItemsSource和ItemTemplate的WPF ListBox

来自分类Dev

使用样式动态更改ListBox方向

来自分类Dev

如何使用DataTemplates支持ListBox的继承

来自分类Dev

使用MVVM在ListBox中进行绑定

来自分类Dev

使用pictureBox预览listBox中的图像

来自分类Dev

使用选定的项目创建ListBox MsgBox

来自分类Dev

使用ItemsSource和ItemTemplate的WPF ListBox

来自分类Dev

使用样式动态更改ListBox方向

来自分类Dev

使用MVVM在ListBox中进行绑定

来自分类Dev

使用 DataBinding 时在 RadGrid 内显示 ListBox

来自分类Dev

WPF ListBox 使用 DataTemplate 显示对象属性