问题:

在Linq中怎么删除一对多或多对多的映射关系表?

在MVC的Models的打开数据库文件

双击XXX.edmx

得到一张画好的Linq风格的数据库关系图:

比如要删除表User和表Role的映射关系的话,只需要使用其导航属性下的Roles,将其遍历删除:

User user = context.Users.Single(x => x.UserId == id);

while(user.Roles.Count>0)

{

Role x = user.Roles.First();

user.Roles.Remove(x);

}

注意:这个和普通的SQL操作不一样,Linq是面向对象的,因此不需要到

UserRoles映射表删除记录!

实际上,这个导航属性即由UserRoles映射表自动生成的,在SQL风格的数据库关系图中存在UserRoles映射表,但在Linq风格的数据库关系图中却没有这张表了,而是Linq自动将这张表转换成导航属性!

SQL风格的数据库关系图:

精华注

在级联删除中,可以根据Linq风格的数据库关系图中导航属性顺序删除下来即可!

问题:

怎么利用默认以更加方便?

如果一个按钮类型是submit,那么,它将自动执行和View名相同的action,这个是缺省值。

如果理解这个问题,那么在编程的时候就能省下许多事,包括submit提交,return View()等。

转载于:https://www.cnblogs.com/xiaxiazl/archive/2012/02/12/2348378.html

学习第六天@Linq操作相关推荐

  1. Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解

    本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to Entities 使用LINQ to Entities操作实体 L ...

  2. 8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解...

    本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LI ...

  3. Python学习.第六天.字典

    Python学习.第六天.字典 前言 一.什么是字典? 二.字典的原理 三.字典的创建与删除 四.字典的查询操作 五.字典元素的增.删.改操作 1.key的判断: 2.字典元素的删除 3.字典元素的新 ...

  4. eclipsevue代码怎么运行_[Java教程]使用eclipse初步学习vue.js操作

    [Java教程]使用eclipse初步学习vue.js操作 0 2017-11-26 19:00:06 一.vue.js的初步认识 https://unpkg.com/vue ">vu ...

  5. 以python入门教程新世界-国外旅行也不忘学习Python:Python 操作列表001

    Python从小白到入门 ~ Part 4 操作列表 001 Python是一门杰出的语言,值得你去学习,咱们现在就开始吧.--<Python编程从入门到实践>P44-P50 人生--这个 ...

  6. LINQ操作数组(交集,并集,差集,最值,平均,去重复)

    数组是大学里经常拿来做算法练习的对象.一些经典算法非常有价值,考试.装逼.面试都十分有用.但现在是效率时代,编程讲究生产效率,利用LINQ,可以让程序猿避免写一些基本算法,把精力花在业务处理上. 下面 ...

  7. 【Python基础】零基础学习Python列表操作

    作者:来自读者投稿 整理:Lemon 出品:Python数据之道 " 「Python数据之道」导读:本文来自读者投稿,Python数据之道早些时候也发过 Python 列表相关的文章,可以前 ...

  8. python设置文件权限_PYTHON学习之文件操作;

    PYTHON学习之文件操作: 文件内容替换 for line in flielinput.input("filepath",inplace=1): line = line.repa ...

  9. Vue 学习 第六天学习笔记

    Vue 学习 第六天学习笔记 1.webpack  使用复习 第一步:先建立文件夹. 第二步,用webpack将其初始化,建立管理.npm 的包管理工具管理起来, npm init -y  .注意{查 ...

最新文章

  1. php百度自动推送代码,怎么设置百度自动推送代码安装教程-百度自动推送好处解析...
  2. python super理解(二)
  3. 深度讲解:同步/异步/阻塞/非阻塞/BIO/NIO/apr
  4. 【推荐系统】KDD2021推荐系统论文集锦
  5. java网络编程之Socket编程
  6. 套接字错误处理函数的封装思想及函数实现
  7. stm32l0的停止模式怎么唤醒_最强家庭娱乐系统+儿童模式,小度在家智能屏X8开售抢先体验...
  8. github get 请求指定页面的代码
  9. Spring4.x(9)--Spring的Hibernate事务-XML
  10. form表单input使用disabled后提交不能获取表单值的解决方法
  11. [CGAL] CGAL的编译与使用
  12. android 字体显示框架,资源样式 - 主题 - 《XUI - Android 原生 UI 框架》 - 书栈网 · BookStack...
  13. iOS 出现:不受信任的开发者 弹框
  14. Vue3+TypeScript
  15. 激光雷达和毫米波雷达工作原理对比
  16. SpringBoot 项目单元测试
  17. javascript 0基础入门
  18. 深度学习:长短期记忆模型LSTM
  19. echarts在IE浏览器不显示的问题
  20. inet_csk_get_port(...)

热门文章

  1. java 蓝桥杯算法训练 纪念品分组(题解)
  2. python 命令行解析模块_Python解析命令行读取参数 -- argparse模块
  3. TopicDeletionManager分析
  4. php 数组 键值 初始化,PHP 自定义键值数组
  5. (100)详细描述一个你做过的项目, 面试必问(二十四)(第20天)
  6. Xilinx FIFO IP核使用
  7. android ble 调试工具,分享一个蓝牙BLE调试小程序LightBlue
  8. 查看函数说明_Axure函数使用说明
  9. linux服务器拓扑图,Linux服务器作为网关的DNS分离解析服务(CentOS 7版本)
  10. python嵌套循环优化_减少循环嵌套,提升代码运行速度!你不知道的3个实用Python函数...