EntityFrameworkCore
left join
var query = from log in logRepository.Table.Include(a => a.User)
join
user in logRepository.Table on log.UserID equals user.ID into lu
from lu1 in lu.DefaultIfEmpty()
select new { log.Title,log.Description,log.User.Name};
生成的sql
SELECT [log].[ID], [log].[Name], [log].[CompanyName], [log.User].[Password]
FROM [Log] AS [log]
LEFT JOIN [User] AS [log.User] ON [log].[UserID] = [log.User].[ID]
LEFT JOIN [User] AS [user] ON [log].[UserID] = [user].[ID]
log.UserID 为可空类型,否则生成的sql中会是inner jion
延迟加载
建议不要使用
每次用到延迟加载属性,都会查一次数据库;
比如列表中(100行)访问延迟加载属性,会多查100次数据库;
比如序列化的时候,也会根据延迟加载属性查询数据库;
EntityFrameworkCore的更多相关文章
- ENTITYFRAMEWORKCORE 二使用配置文件来配置数据库链接
首先 配置文件现在已经变成appsettings.json, 先添加一个连接字符串 "ConnectionStrings": { "PWDatabase": & ...
- EntityFrameworkCore 试用
引用 EF Core Sqlite Install-Package Microsoft.EntityFrameworkCore.SqlServer 引用 EF Core Tool Install-Pa ...
- EntityFrameworkCore使用Migrations自动更新数据库
EntityFrameworkCore使用Migrations自动更新数据库 系统环境:Win10 IDE:VS2017 RC4 .netcore版本:1.1 一.新建ASP.NET Core Web ...
- ASP.NET Core:使用EntityFrameworkCore操作MySql来丰富仓储模块
概述 上一篇简单介绍了Dapper的基本用法,数据的存储为SqlServer.那么这一篇就记录一下使用EFCore来操作MySql的一些方式,这种模式比较适合那种一个项目中需要操作多种数据库的模式.不 ...
- .NET CORE 学习笔记之安装EF【Microsoft.EntityFrameworkCore】扩展报错
最近在学习.NET CORE ,刚开始就遇到问题了. 安装EF框架的试试就报错, 报错如下: 错误 程序包还原失败.正在回滚“XXX”的程序包更改. 找了好久的方案,网上也没搜到对应的问题和方案,然而 ...
- EntityFramework6与EntityFrameworkCore的区别
EntityFramework6 EF6 是一个久经考验的数据库访问技术,发展多年,拥有许多特性,并且成熟稳定.2008年EF作为 .Net 3.5 Sp1 和Visual Studio 2008 S ...
- .Net Core 2.0 EntityFrameworkCore CodeFirst入门教程
最近难得有时间闲下来,研究了一下.net core 2.0,总的来说,目前除了一些第三方的库不支持外,基本上可以满足我们的项目需求了! 我们就以一个网站开发为例,搭建一个简单的三层架构,先熟悉一下.n ...
- EntityFrameworkCore v1.1.1 问题汇总
随着宇宙第一IDE的最新版本发布[2017/3/7],AspNetCore 和EntityFrameworkCore(团队)都发布了最新的代码. 不过在我看来,这些到还不是最重要的.最重要的是dotn ...
- ABP实践(2)-ASP.NET Core 2.x版本EntityFrameworkCore(EF)使用mysql数据库
上一篇中EntityFrameworkCore默认使用的是微软的sql server,本篇改为mysql步骤如下: 1,在基础层xxx.EntityFrameworkCore依赖项添加Pomelo.E ...
- EntityFrameworkCore中的OnModelCreating
在我们使用EntityFrameworkCore作为数据库ORM框架的时候,不可避免的要重载DbContext中的一个虚方法OnModelCreating,那么这个方法到底是做什么的?到底有哪些作用呢 ...
随机推荐
- 生命周期中mounted和created的区别。
一.什么是生命周期? 用通俗的语言来说,就是Vue中实例或者组件从创建到消灭中间经过的一系列过程.虽然不太严谨,但是也基本上可以理解. 通过一系列实践,现在把所有遇到的问题整理一遍,今天记录一下cre ...
- python实现迭代法求方程组的根
有方程组如下: 迭代法求解x,python代码如下: import numpy as np import matplotlib.pyplot as plt A = np.array([[8, -3, ...
- Unreal Engine* 4/英特尔® VTune™ Amplifier 使用指南
借助英特尔 VTune Amplifier,可以通过单一易用的分析界面获得先进的分析功能.UE4 和英特尔 VTune Amplifier 相互配合,支持调查代码并进行分析,从而在多个内核上顺畅运行. ...
- Zabbix官方部署搭建
Zabbix在企业生产环境中是用的最广泛的服务器监控软件,其功能强大.配置简单.开源免费,是企业监控软件的首选. 一.Zabbix简介 zabbix是一个基于WEB界面的提供分布式系统监视以及网络 ...
- C#_初识之HelloWorld
C#————是一个我很不愿意去碰的语言,但是还是得低头,巨硬还是巨硬....... ———————————————————————————————————————————————— 前几天在Githu ...
- Element ui 2.8版本中的table树不能默认全展开解决方法
方案一:这个方案有问题 <el-table ref="tableTreeRef" :data="tableDate" ...... </el-tab ...
- 【计算机视觉】基于样本一致性的背景减除运动目标检测算法(SACON)
SACON(SAmple CONsensus)算法是基于样本一致性的运动目标检测算法.该算法通过对每个像素进行样本一致性判断来判定像素是否为背景. 算法框架图 由上图可知,该算法主要分为四个主要部分, ...
- 利用pycharm 安装tushare(转) + dir(ts)
1.在pycharm里,有安装组件的方法,进入 File - Setting - Project:StockMarket - Project InterPreter,在右边点击“+”,进入搜索页面,搜 ...
- 第八周课程总结&实验报告(六)
第八周课程总结 启动多线程售票(上课老师说要加入作业的部分) public class TestDemo { public static void main(StringD args) throws ...
- (5.3.2)数据库迁移——SSIS包批量导出
SSIS连接出错 原因 : ssms 工具 不是 admin 权限 打开的 SSIS包批量导出代码 use msdb go IF OBJECT_ID('msdb.dbo.usp_ExportS ...