发布网友 发布时间: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容器中构建和运行微服务。