c# (nop中)下拉列表(有外键)
第一种情况。view视图加载出来时就有值,实现步骤如下
1.在操作的界面Model中建立public List<SelectListItem> xxx(取名){ get; set; }
2.在Model中的构造函数中实例化this.Courses = new List<SelectListItem>();实例一个集合化
注:1和2是在同一个Model中完成的。
3.控制器中 :
(1)从数据库中查询出 所有数据(通过接口实现)
(2)使用foreach遍历出来在实例化一个变量(类型为SelectListItem)
例子为:
var courses = _courseService.GetAllCourses();//从数据查询数据
foreach (var course in courses)
{
SelectListItem li = new SelectListItem();//实例化一个变量
li.Text = course.CourseName;
li.Value = course.Id.ToString();
model.Courses.Add(li);
}
4.界面中
@Html.DropDownListFor(x => x.CourseId(name)//通过id再去查询name
第二种情况,view视图加载出来时没有值,实现步骤如下:
同第一种只有控制器中有所差别:
例子:
var model = new SCListModel();//中间model
var courses=_courseService.GetAllCourses();
SelectListItem li = new SelectListItem();
li.Text = "";
li.Value = "";
model.SCNames.Add(li);
foreach (var item in courses)
{
li = new SelectListItem();
li.Text = item.CourseName;
li.Value = item.Id.ToString();
model.SCNames.Add(li);
4.界面
<tr>
<td class="adminTitle">
<span>课程名称:</span>
</td> <td class="adminData">
@Html.DropDownListFor(model => model.CourseId, Model.SCNames)//id对于的值
</td>
</tr>
c# (nop中)下拉列表(有外键)的更多相关文章
- 在论坛中出现的比较难的sql问题:10(删除多表中的同一个外键)
原文:在论坛中出现的比较难的sql问题:10(删除多表中的同一个外键) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有 ...
- 关于hibernate中双向外键关联one-to-one的property-ref=的问题(转)
大家都知道hibernate中的one-to-one映射主要有两种策略,(1)一对一主键关联(单向和双向).(2)一对一外键映射(单项和双向).本文主要讲解一下,一对一外键映射中的双向问题,在此前先通 ...
- EF Code First中的主外键约定和一对一、一对多关系的实现
对于主外键约定的理解,其实是学习实体间一对一和一对多关系的基础. 1.1 主键(Key)约定 主键的默认约定是:只要字段名为--实体名(类名)+"id"(不区分大小写),这就算是默 ...
- django中的数据库外键操作
以MYSQL为例: (1)在model中定义两个数据表,食物信息和食物类别信息 class foodInfo(models.Model): food_id = models.AutoField ...
- hibernate中指定非外键进行关联
/** * 上级资源 */ @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "PARENT_ID", reference ...
- Navicat for Oracle中如何使用外键
转自:https://blog.csdn.net/weixin_39183543/article/details/80555104 1. 外键名最后保存的时候自动生成: 2. 参考模式自动生成: 3. ...
- Linq技巧4——怎么在.NET 3.5 SP1中伪造一个外键属性
在.NET 4.0 的EF 中,增加了FK Associations 的功能,但是在.NET 3.5 SP1 中,仅仅支持独立的关联,这意味着FK 栏位不能作为实体的属性来使用,也就是说在使用的时候, ...
- python django中的orm外键级联删除
今天添加了一个路由表,路由表做外键,然后添加了几个组,路由表为组的外键,当我使用删除功能对路由表进行删除时,竞然将我的组也相当的删除了:尽管这是测试,但放到生产环境中还是会发生意外的:这个问题要解决: ...
- django amdin页面下拉列表的外键增加条件过滤
class MenuList(admin.ModelAdmin): list_display = ('menuId', 'menuName', 'menuDesc', 'menuType', 'sor ...
随机推荐
- Linux中cp和scp命令的使用方法
Linux为我们提供了两个用于文件copy的命令,一个是cp,一个是scp,但是他们略有不同. cp --- 主要是用于在同一台电脑上,在不同的目录之间来回copy文件 scp --- 主要是在不同的 ...
- 用WinDbg调试Windows和驱动程序
由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:sunylat@163.com MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/h ...
- MYSQL C API : CLIENT_MULTI_STATEMENTS 选项
#include <iostream> #include <mysql.h> #include <string> #include <assert.h> ...
- QT学习之路--创建一个对话框
Q_OBJECT:这是一个宏,凡是定义信号槽的类都必须声明这个宏. 函数tr()全名是QObject::tr(),被他处理过的字符串可以使用工具提取出来翻译成其他语言,也就是做国际化使用. 对于QT学 ...
- Change the Windows 7 Taskbar Thumbnail and List Mode
Manually in Registry Editor 1. Open the Start Menu, then type regedit in the search boxand press Ent ...
- Android UI 绘制过程浅析(一)LayoutInflater简介
前言 这篇blog是我在阅读过csdn大牛郭霖的<带你一步步深入了解View>一系列文章后,亲身实践并做出的小结.作为有志向的前端开发工程师,怎么可以不搞懂View绘制的基本原理——简直就 ...
- Spark SQL External Data Sources JDBC官方实现写测试
通过Spark SQL External Data Sources JDBC实现将RDD的数据写入到MySQL数据库中. jdbc.scala重要API介绍: /** * Save this RDD ...
- spring数据源配置
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE beans PUBLIC "-// ...
- Windows 下动态链接库和静态链接库
1.静态链接库:就是在编译的时候把库中代码复制进工程中,导致工程变大,但是速度快. 缺点在于一套代码可能在内存中有多份拷贝,占用内存. 2.动态链接库:库由windos api加载库代码,内存中只有一 ...
- 稍览了一下CommonJS
CommonJS是服务器端模块的规范,现在炒得很火的Node.js采用了这个规范. 根据CommonJS规范,一个单独的文件就是一个模块.加载模块使用require方法,该方法读取一个文件并执行,最后 ...