.net core1.1 EF連接(Sql Server)數據庫(類=>數據)
測試環境
- 系統 win10 x64
- VSCode 1.12.1
- .net core 1.1
- .NET Command Line Tools (1.0.3)
操作
- 創建項目
- dotnet new -o condoleEF
- 使用VSCode 打開, 輸入下面的代碼
- consoleef.csproj 依賴程序集
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp1.1</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="1.1.1" PrivateAssets="All" />
</ItemGroup>
<ItemGroup>
<DotNetCliToolReference Include="Microsoft.EntityFrameworkCore.Tools.DotNet" Version="1.0.0" />
</ItemGroup>
</Project>
- blog.cs 數據庫連接
using Microsoft.EntityFrameworkCore;
namespace consoleEF
{
public class EFDbContext : DbContext
{
public virtual DbSet<Blog> Blogs { get; set; }
// 數據庫連接
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer(@"Server=.;Database=Blogging;Trusted_Connection=True;");
}
}
public class Blog
{
public int Id{get; set;}
public string Name{get; set;}
}
}
- Program.cs 測試連接
using System;
using consoleEF;
namespace consoleef
{
class Program
{
static void Main(string[] args)
{
using(var db = new EFDbContext()){
var blog = new Blog(){Name="Blog"};
db.Blogs.Add(blog);
db.SaveChanges();
}
}
}
}
3.數據遷移
- 注意如果在命令行終端下操作要再項目路徑下進行
-
數據遷移程序 dotnet ef migrations add db00
Paste_Image.png -
生成數據庫 dotnet ef database update
遷移成功
!! VSCode 這個版本的
- C#的代碼提示補全
- OmniSharp 這個操作(大點的項目)很慢(不知道是不是我的項目問題)