• 学习第六天@Linq操作


    问题:

    在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协议
    思维:从互联网到区块链
    BFT-SMaRt:用Netty做客户端的可靠信道
    BFT-SMaRt:用Java做节点间的可靠信道
    共识网络BFT-SMaRt:理论与实践
    EOS源码分析:transaction的一生
    勘误:EOS资源抵押退还
    如何踩中下一个技术节拍
    本人新书,欢迎抢购
    REX:EOS资源租赁平台详解
  • 原文地址:https://www.cnblogs.com/xiaxiazl/p/2348378.html
Copyright © 2020-2023  润新知