天天看點

razor讀取mysql,Razor網頁資料庫連接配接打開和關閉

razor讀取mysql,Razor網頁資料庫連接配接打開和關閉

Hello.

In razor web pages when youd write Database.Open("dbname"); you open a connection with the database. But is that connection closing automaticlly or does it stay open?

What I have tried:

I am using razor pages and its helpers to create a project site but i do not want to use any external c# classes.

Thank you.

解決方案

You should use entity framework and inject your database into the code. That way, you're not managing state of your database connections at all.

But, if you do it manually, you should create your connection in a using block. Then your IDisposable on whatever class you use, should disconnect for you. If you don't do that, there's no reason to think your controller class will find objects in your method and clean them up.

If you're using EF, this is worth reading:

Database Connection Hazards with Entity Framework - Brent Ozar Unlimited®[^]

Basically, entity framework goes ahead and tries to manage connections for you, so closing connections is basically fighting it.