私はasp.netコアMVCモードを使用してAPPのサーバープログラムに取り組んでいます。そして、XXXXcontrllerでは、「Connection.open()」や「Connection.close()」のようなコードは使用しません。HTTP GETアクションはこれに似ています。asp.netコアMVCモードでSQL Server接続を管理するにはどうすればよいですか?
public async Task<IActionResult> register(string phoneNum, string password, string userType)
{
//从数据库里找到m.Id和 id相同的车,赋给dbCars
var dbCars = await _context.dbUsers.SingleOrDefaultAsync(m => m.UserName == phoneNum);
// var dbCars= _context.dbCars.Where(s => s.Id == id).FirstOrDefault<dbCars>();
if (dbCars == null)//如果为空,则注册
{
//注册新用户
dbCars = new dbUsers();
dbCars.UserName = phoneNum;
dbCars.Password = password;
dbCars.UserType = userType;
dbCars.IsVerified = true;
_context.Add(dbCars);
await _context.SaveChangesAsync();
//注册完成之后,把ID、用户类型和是否认证返回回去
List<string> userInfo = new List<string>();
userInfo.Add(dbCars.Id.ToString().Trim());
userInfo.Add(dbCars.UserType.ToString().Trim());
userInfo.Add(dbCars.IsVerified.ToString());
string json = JsonConvert.SerializeObject(userInfo);
return Ok(json);
}
else //如果不为空就代表注册过了
{
return Ok("0"); //返回1代表注册过了
}
}
多くのユーザーがこのサービスにアクセスすると、SQL接続をどのように維持する必要がありますか?これらの接続を手動で閉じる必要がありますか?または、それは自動的にいくつかの魔法によって行うことができますか?多くのユーザーがこのサービスにアクセスすると、私のプログラムは中断されますか?
私は混乱しています、誰が私に答えを与えることができますか?
あなたはEntity Frameworkを使用していると思います。 EFの開閉では、接続は単独で管理されるため、そのことについて気にする必要はありません。 –
はい、Entity Frameworkです。だから、サーバーにアクセスできるユーザーの数は何に依存していますか? IISの設定で? SQL Serverの設定では?私のサーバーとは関係ありませんか?私の接続文字列は "DefaultConnection"です: "データソース= localhost;データベース= nxts; Trusted_Connection = True; MultipleActiveResultSets = true" " –