ef mysql dbfirst,.NetCore教程之 EFCore連接Mysql DBFirst模式
一:創(chuàng)建EF的類(lèi)庫(kù),同時(shí)將此項(xiàng)目設(shè)置為啟動(dòng)項(xiàng)(為Scaffold-DbContext -tables指令使用),同時(shí)安裝2個(gè)包 ①M(fèi)icrosoft.EntityFrameworkCore.Tools ②Pomelo.EntityFrameworkCore.MySql (這個(gè)是第三方的ef mysq ...
一:創(chuàng)建EF的類(lèi)庫(kù),同時(shí)將此項(xiàng)目設(shè)置為啟動(dòng)項(xiàng)(為Scaffold-DbContext -tables指令使用),同時(shí)安裝2個(gè)包
①M(fèi)icrosoft.EntityFrameworkCore.Tools
②Pomelo.EntityFrameworkCore.MySql (這個(gè)是第三方的ef mysql 中間件)
例如:
二:生成資料庫(kù)的實(shí)體和EF的DBcontext對(duì)象,用到的是 Scaffold-DBcontext命令
在程式包控制臺(tái)輸入以下命令
Scaffold-DbContext -Force ?"Server=****;User Id=root;Password=****;Database=****" -Provider "Pomelo.EntityFrameworkCore.MySql"
server:資料庫(kù)地址,User Id:賬號(hào),Password:登錄密碼
如果是針對(duì)單表的更新,加一個(gè)-Tables 後面是要更新的表名
Scaffold-DbContext -Force ?"Server=****;User Id=root;Password=****;Database=****" -Provider "Pomelo.EntityFrameworkCore.MySql" ?-Tables "myTable"
執(zhí)行完成之後會(huì)生成指定的是Model ,註意:表必須有主鍵,才會(huì)生成,如果沒(méi)有主機(jī)會(huì)報(bào)?Unable to generate entity type for table “xxxx” 警告,當(dāng)然實(shí)體也不會(huì)生成
出現(xiàn)的問(wèn)題:如果有表欄位為 datetime類(lèi)型的,生成的時(shí)候會(huì)報(bào)錯(cuò) 應(yīng)輸入標(biāo)識(shí)符,處理方法:把.()去掉。此問(wèn)題如果有大神看到幫忙解答下
例如:
三:創(chuàng)建標(biāo)準(zhǔn)的web應(yīng)用,進(jìn)行使用
①在appsettings.json配置資料庫(kù)的地址信息,註意 ?SslModel=none例如
"MySqlConnection": "Database='***';Data Source=****;User ID=***;Password=***;CharSet=utf8;SslMode=None"
② 在startup.cs 配置註入,其中有用到一些引用 順手引用一下
public void ConfigureServices(IServiceCollection services)
{
services.Configure(options =>
{
// This lambda determines whether user consent for non-essential cookies is needed for a given request.
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
});
//ef mysql 配置
services.AddDbContext(options => options.UseMySql(Configuration.GetConnectionString("MySqlConnection")));
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
}
③之後就是標(biāo)準(zhǔn)的調(diào)用,例如在控制器中的使用
public class HomeController : Controller
{
drewtestContext _content;
public HomeController(drewtestContext context)
{
_content = context;
}
public IActionResult Index()
{
List list_sctonlyHomes = _content.SctonlyHome.ToList();
return View();
}
}
到此就是基礎(chǔ)的EF core mysql入門(mén)配置了。
----再牛逼的夢(mèng)想,也抵不住我傻逼似的堅(jiān)持!別在該奮鬥的年紀(jì),貪圖安逸。 今天多學(xué)一點(diǎn),明天的路更寬!
總結(jié)
以上是生活随笔為你收集整理的ef mysql dbfirst,.NetCore教程之 EFCore連接Mysql DBFirst模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iphone xmax为什么开不了热点(
- 下一篇: 网络爽文改编 《赘婿》动画定档4月23日