码迷,mamicode.com
首页 > Web开发 > 详细

.Net Core 开发踩坑记录

时间:2017-05-16 12:55:59      阅读:479      评论:0      收藏:0      [点我收藏+]

标签:dia   int   logs   test   否则   tin   nconf   color   sch   

1.EF Net Core版本,在linux环境下,数据库版本最低配置为SQL Server 2008 SP4,否则连接数据库的时候第一次会报timeout,无论超时时间怎么加长,都会报这个错误,在windows下是一切正常的

2.EF Net Core版本,默认生成的SQL脚本是SQL Server 2014版本的,如果你的数据库不是2014版本的话,目前我在使用分页语句那边会报错。不是用EF生成的2014版本SQL语句的方式如下:

1  public class MSSQLContext : DbContext
2  {
3         public DbSet<TCBaseDataTest> TCBaseDataTests{ get; set; }
4 
5         protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
6         {
7             optionsBuilder.UseSqlServer(数据库connction, b => b.UseRowNumberForPaging());
8         }
9  }

3.EF Net Core版本,修改实体映射生成SQL表名,修改方式如下,(PS:这一点我是照搬官网的,官网使用文档地址为https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/intro

 1 using ContosoUniversity.Models;
 2 using Microsoft.EntityFrameworkCore;
 3 
 4 namespace ContosoUniversity.Data
 5 {
 6     public class SchoolContext : DbContext
 7     {
 8         public SchoolContext(DbContextOptions<SchoolContext> options) : base(options)
 9         {
10         }
11 
12         public DbSet<Course> Courses { get; set; }
13         public DbSet<Enrollment> Enrollments { get; set; }
14         public DbSet<Student> Students { get; set; }
15 
16         protected override void OnModelCreating(ModelBuilder modelBuilder)
17         {
18             modelBuilder.Entity<Course>().ToTable("Course");
19             modelBuilder.Entity<Enrollment>().ToTable("Enrollment");
20             modelBuilder.Entity<Student>().ToTable("Student");
21         }
22     }
23 }

 4.目前MySQL官网还没有出正式版本的组件,我们的项目使用的MySQL与MySQL EF组件是SapientGuardian.MySql.Data和SapientGuardian.EntityFrameworkCore.MySql

.Net Core 开发踩坑记录

标签:dia   int   logs   test   否则   tin   nconf   color   sch   

原文地址:http://www.cnblogs.com/fengqiaoyebo/p/6860593.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!