问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

如何在.net core中使用ef

发布网友 发布时间:2022-04-23 09:33

我来回答

2个回答

懂视网 时间:2022-05-01 18:40

class User { public int Id { set; get; } public string Name { set; get; } public DateTime Dt { set; get; } = DateTime.Now; }

这里使用 db first方式进行数据库的操作,添加一个test的数据库,然后新建一个user表

技术分享

添加数据库上下文类。

using Microsoft.EntityFrameworkCore;
using MySQL.Data.EntityFrameworkCore.Extensions;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Wolfy.EfMySql.Models;

namespace Wolfy.EfMySql.Data
{
 public class TestContext : DbContext
 {
 public DbSet<User> User { set; get; }
 protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
  => optionsBuilder.UseMySQL(@"Server=localhost;database=test;uid=root;pwd=123456");
 }
}

添加控制器

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Wolfy.EfMySql.Data;
using Wolfy.EfMySql.Models;

// For more information on enabling MVC for empty projects, visit http://go.microsoft.com/fwlink/?LinkID=397860

namespace Wolfy.EfMySql.Controllers
{
 public class HomeController : Controller
 {
 // GET: /<controller>/
 public IActionResult Index()
 {
  var db = new TestContext();
  db.Add(new User { Name = "Hello world" });
  db.SaveChanges();
  var lst = db.Set<User>().ToList();
  return View(lst);
 }
 }
}

添加路由

using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;

namespace Wolfy.EfMySql
{
 public class Startup
 {
 // This method gets called by the runtime. Use this method to add services to the container.
 // For more information on how to configure your application, visit http://go.microsoft.com/fwlink/?LinkID=398940
 public void ConfigureServices(IServiceCollection services)
 {
  
 }

 // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
 public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
 {
  loggerFactory.AddConsole();

  if (env.IsDevelopment())
  {
  app.UseDeveloperExceptionPage();
  }
  app.UseMvc(routes =>
  {
  routes.MapRoute(name: "default", template: "{controller=Home}/{action=index}");
  });

 }
 }
}

浏览Index

技术分享

通过上面,可以看出,是没有添加mvc服务,引起的,修改如下:

 public void ConfigureServices(IServiceCollection services)
 {
  services.AddMvc();
 }

视图

@*
 For more information on enabling MVC for empty projects, visit http://go.microsoft.com/fwlink/?LinkID=397860
*@
@model List<Wolfy.EfMySql.Models.User>
<ul style="list-style-type:none;">
 @foreach (var item in Model)
 {
 <li>@item.Id @item.Name @item.Dt.ToString("yyyy-MM-dd HH:mm:ss")</li>
 }
</ul>

刷新页面

技术分享

结语

这里算是尝尝鲜。关于asp.net core的更多内容,需要参考https://www.asp.net/core

探索Aspnetcore+mysql+efcore

标签:time   route   task   err   end   startup   mic   under   dev   

热心网友 时间:2022-05-01 15:48

以前.Net开发人员只需要选定运行时和.Net框架即可。但现在,它是Windows生态系统从物联网到云最宽泛的一部分。开发人员有选择,这在Microsoft的VisualStudio2017的新安装程序中显而易见。当涉及到编写C#,F#或VisualBasic,有广泛的.Net变体和平台可以选择。这不是一件坏事,.Net跨平台运行时本来就是微软的最初目标之一,虽然当时未能如愿,因为微软没有击败Flash。有趣的是,VisualStudio安装程序对新家庭成员.NetCore十分重视。当选择构建ASP.NetWeb应用程序或想使用容器跨平台应用程序时,.NetCore是将熟悉的Windows开发工具应用到更广泛的Microsoft生态系统,特别是下一代企业应用程序的构建。虽然.NetCore具有许多其他.Net平台的部分功能,但它专注于提供基于控制台的服务器应用程序。它在Windows,MacOS和Linux上提供构建和运行命令行应用程序的工具,它也是用于构建ASP.NetCoreWeb应用程序的工具。在WindowsServerNano上运行.NetCore,使用熟悉的工具在Windows容器中构建和运行微服务。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
父母离异的话,会不会导致孩子心智不成熟? 过节 公司给我们发的购物卡 这个怎么做分录 属于福利费吗 需要计提吗... 乡村振兴公务员和省考公务员有什么区别 ...小时候跟着爷爷学国画书法,小受家是农村的,小受姓夏或叶,他带着他... 瑞麒X1安全装置 瑞麒X1的舒适型和豪华型有什么区别?配置有哪些不同的地方?这5000块多在... 瑞麒X1的安全性能方面配置如何? 脚崴了 有大量於血 怎么样才能快速消肿 脚崴了外侧出现瘀血浮肿怎么消除? ...换了我喜欢的发型,但是穿了件有点透明的衣服,可以看到肩_百度... 学校招生办一般做些什么? ASP.net core是什么? 湖北省招生办电话及地址 c#一个解决方案里包含.netcore3.1和asp.net两个项目,能正常发布iis吗... 联想m7268电脑怎么无线打印- 问一问 asp.net core 读写任意文件 招生办是做什么的 如何通过微信朋友圈直销柚子? 招生办是什么意思 .netCore输出设置? 微信卖柚子怎么发朋友圈 省市招办是什么意思 邻居送来柚子和月饼怎么发朋友圈怎么发? netcore, netcort 两个英文是什么意思 招生办是什么 摘果子发朋友圈短语有哪些? .NET framework 和.NET有区别?什么区别? 招生办是啥意思? 学校采摘发朋友圈怎么说 ...请问是继续跟着微软走转向net core、还是转java、还是转前端,或者其 ... Netcore是什么网络?安全吗? 湖北省招生办在哪啊? 招生办是在教育局吗? 联想笔记本怎么连接打印机? 难道.NET Core到R2连中文编码都不支持吗 联想打印机怎样和笔记本电脑连接? 什么是招生办 移动版三星s5是否支持联通4g网络 市招生办和省招生办有什么不同 湖北省招生办公室在哪里 联想M102W打印机怎么无线连接电脑连接? 联想打印机M7256WHF如何连接wifi打印 过夜鸡蛋能吃吗放在冰箱 打散的鸡蛋放冰箱隔夜能吃吗 过夜的鸡蛋放冰箱里第二天可以吃吗 生鸡蛋打开了放冰箱第二天可以吃吗 序列号是什么意思 煮熟的鸡蛋放冰箱冷藏隔夜可以吃吗 手机设置关于手机里的序列号是什么?和IMEI、MEID有什么区别? 放冰箱的过夜的熟鸡蛋能吃吗?