我的Docker-CE学习笔记(03)
生活随笔
收集整理的這篇文章主要介紹了
我的Docker-CE学习笔记(03)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
新建一個Asp.net Core 2.0 WebAPI項目。
添加EntityFrameworkCore引用
建立Data,Models文件夾
Models內建立User.cs
namespace User.API.Models {public class User{public int Id { get; set; }public string Name { get; set; }public string Company { get; set; }public string Title { get; set; }} }Data內建立UserContext.cs,繼承自DBContext
namespace User.API.Data {public class UserContext : DbContext{// 傳一個構造函數// base調用構造函數public UserContext(DbContextOptions<UserContext> options) : base(options){}protected override void OnModelCreating(ModelBuilder modelBuilder){// 重寫方法,AppUser生成UsersmodelBuilder.Entity<AppUser>().ToTable("Users").HasKey(u => u.Id);base.OnModelCreating(modelBuilder);}public DbSet<AppUser> Users { get; set; }} }appsettings.json添加連接字符串
{"Logging": {"IncludeScopes": false,"Debug": {"LogLevel": {"Default": "Warning"}},"Console": {"LogLevel": {"Default": "Warning"}}},"ConnectionStrings": {"MySqlUser": "server=127.0.0.1;port=3306;database=fieer_mysql;userid=fieer;password=fieer"} }Startup.cs內添加服務,生成默認數據
namespace User.API {public class Startup{public Startup(IConfiguration configuration){Configuration = configuration;}public IConfiguration Configuration { get; }public void ConfigureServices(IServiceCollection services){// 添加services.AddDbContext<UserContext>(options =>{options.UseMySQL(Configuration.GetConnectionString("MySqlUser"));});services.AddMvc();}public void Configure(IApplicationBuilder app, IHostingEnvironment env){if (env.IsDevelopment()){app.UseDeveloperExceptionPage();}app.UseMvc();InitUserDatabase(app);}// 添加默認用戶public void InitUserDatabase(IApplicationBuilder applicationBuilder){// 依賴注入using (var scope = applicationBuilder.ApplicationServices.CreateScope()){var userContext = scope.ServiceProvider.GetRequiredService<UserContext>();if (!userContext.Users.Any()){userContext.Users.Add(new Models.AppUser { Name = "fieer" });userContext.SaveChanges();}}}} }暫時注釋掉InitUserDatabase(app);
程序包管理控制臺,添加Migration
$ Add-Migration init生成文件
更新數據庫
$ Update-database取消備注,運行程序
編輯ValuesController.cs
namespace User.API.Controllers{
??? [Route("api/[controller]")]
??? public class ValuesController : Controller
??? {
??????? private UserContext _userContext;
??????? // 依賴注入
??????? public ValuesController(UserContext userContext)
??????? {
??????????? _userContext = userContext;
??????? }
??????? // GET api/values
??????? [HttpGet]
??????? public async Task<IActionResult> Get()
??????? {
??????????? return Json(await _userContext.Users.SingleOrDefaultAsync(u => u.Name == "fieer"));
??????? }
??? }
}
運行程序
轉載于:https://www.cnblogs.com/liumuu/p/8503636.html
總結
以上是生活随笔為你收集整理的我的Docker-CE学习笔记(03)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 005 form组件---基本使用.
- 下一篇: 2.1.1Remove Duplicat