src/Framework/Data/Db/Data.MySql/MySqlAdapter.cs
(开头部分) 10KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.Extensions.Logging;
using MySqlConnector;
using NetModular.Lib.Data.Abstractions;
using NetModular.Lib.Data.Abstractions.Entities;
using NetModular.Lib.Data.Abstractions.Enums;
using NetModular.Lib.Data.Abstractions.Options;
using NetModular.Lib.Data.Core;
using NetModular.Lib.Utils.Core.Helpers;
namespace NetModular.Lib.Data.MySql
{
internal class MySqlAdapter : SqlAdapterAbstract
{
public MySqlAdapter(DbOptions dbOptions, DbModuleOptions options, ILoggerFactory loggerFactory) : base(dbOptions, options, loggerFactory?.CreateLogger<MySqlAdapter>())
{
}
public override string Database => AppendQuote(Options.Database) + ".";
public override SqlDialect SqlDialect => SqlDialect.MySql;
/// <summary>
/// 左引号
/// </summary>
public override char LeftQuote => '`';
/// <summary>
/// 右引号
/// </summary>
public override char RightQuote => '`';
/// <summary>
/// 获取最后新增ID语句
/// </summary>
public override string IdentitySql => "SELECT LAST_INSERT_ID() ID;";
public override string FuncLength => "CHAR_LENGTH";
public override string ConnectionStringBuild(string tableName = null)
{
if (tableName.IsNull() && Options.ConnectionString.NotNull())
return Options.ConnectionString;
Check.NotNull(DbOptions.Server, nameof(DbOptions.Server), "数据库服务器地址不能为空");
Check.NotNull(DbOptions.UserId, nameof(DbOptions.UserId), "数据库用户名不能为空");
Check.NotNull(DbOptions.Password, nameof(DbOptions.Password), "数据库密码不能为空");
Options.Version = DbOptions.Version;
#region ==SslMode==
var sslModeStr = "None";
if (Options.MySqlSslMode.NotNull())
{
sslModeStr = Options.MySqlSslMode;
}
else if (DbOptions.MySqlSslMode.NotNull())
{
后面还有 278 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
