4a2e5b9a21940f11757be37d99f0944e240e908b..0b51bf5178442b800fd76f4ff1df5b8e47af7525
4 days ago zhaolei
init
0b51bf diff | tree
4 days ago zhaolei
init
5275bb diff | tree
4 days ago zhaolei
init
31d0fa diff | tree
4 days ago zhaolei
init
176b1b diff | tree
16 files modified
317 ■■■■■ changed files
.gitignore 3 ●●●● patch | view | raw | blame | history
XNJK.sln 2 ●●● patch | view | raw | blame | history
lib/PetaPoco/Database.cs 2 ●●● patch | view | raw | blame | history
lib/PetaPoco/PetaPoco.xml 48 ●●●●● patch | view | raw | blame | history
lib/Prow.AlipayAuth/Prow.AlipayAuth.xml 7 ●●●●● patch | view | raw | blame | history
lib/Prow.Cache/Prow.Cache.xml 137 ●●●●● patch | view | raw | blame | history
lib/Prow.Data/Prow.Data.csproj 6 ●●●● patch | view | raw | blame | history
lib/Prow.Data/Prow.Data.xml 71 ●●●● patch | view | raw | blame | history
lib/Prow.OAuth/Prow.OAuth.xml 10 ●●●● patch | view | raw | blame | history
lib/Prow.TencentAuth/Prow.TencentAuth.xml 7 ●●●●● patch | view | raw | blame | history
lib/Prow.WeChatAuth/Prow.WeChatAuth.xml 7 ●●●●● patch | view | raw | blame | history
src/admin/Bootstrap.Admin/BootstrapAdmin.db patch | view | raw | blame | history
src/admin/Bootstrap.Admin/Pages/Views/Index.razor 2 ●●● patch | view | raw | blame | history
src/admin/Bootstrap.Admin/Views/Admin/Index.cshtml 2 ●●● patch | view | raw | blame | history
src/admin/Bootstrap.Admin/appsettings.Development.json 9 ●●●●● patch | view | raw | blame | history
src/admin/Bootstrap.Admin/appsettings.json 4 ●●●● patch | view | raw | blame | history
.gitignore
@@ -2,4 +2,5 @@
[Oo]bj/
[Bb]in/
.nuget/
.vs/
.vs/
.idea/
XNJK.sln
@@ -131,7 +131,7 @@
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "lib", "lib", "{EA4EC218-75FD-405C-B434-3A67A19E29CE}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "XNJK", "XNJK", "{9158B1D5-A765-4C2E-AEDC-F3D32079E82E}"
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "BootstrapAdmin", "BootstrapAdmin", "{9158B1D5-A765-4C2E-AEDC-F3D32079E82E}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bootstrap.Security", "lib\Bootstrap.Security\Bootstrap.Security.csproj", "{9F73A251-8C74-4A8F-8593-52A68826AC16}"
EndProject
lib/PetaPoco/Database.cs
@@ -3076,4 +3076,4 @@
        {
        }
    }
}
}
lib/PetaPoco/PetaPoco.xml
@@ -4790,3 +4790,51 @@
        </member>
    </members>
</doc>
lities.IPagingHelper">
            <summary>
                Represents the contract for a paging helper.
            </summary>
        </member>
        <member name="M:PetaPoco.Utilities.IPagingHelper.SplitSQL(System.String,PetaPoco.Utilities.SQLParts@)">
            <summary>
                Splits the given <paramref name="sql" /> into <paramref name="parts" />;
            </summary>
            <param name="sql">The SQL to split.</param>
            <param name="parts">The SQL parts.</param>
            <returns><c>True</c> if the SQL could be split; else, <c>False</c>.</returns>
        </member>
        <member name="M:PetaPoco.Utilities.PagingHelper.SplitSQL(System.String,PetaPoco.Utilities.SQLParts@)">
            <summary>
                Splits the given <paramref name="sql" /> into <paramref name="parts" />;
            </summary>
            <param name="sql">The SQL to split.</param>
            <param name="parts">The SQL parts.</param>
            <returns><c>True</c> if the SQL could be split; else, <c>False</c>.</returns>
        </member>
        <member name="T:PetaPoco.Utilities.SQLParts">
            <summary>
                Presents the SQL parts.
            </summary>
        </member>
        <member name="F:PetaPoco.Utilities.SQLParts.Sql">
            <summary>
                The SQL.
            </summary>
        </member>
        <member name="F:PetaPoco.Utilities.SQLParts.SqlCount">
            <summary>
                The SQL count.
            </summary>
        </member>
        <member name="F:PetaPoco.Utilities.SQLParts.SqlSelectRemoved">
            <summary>
                The SQL Select
            </summary>
        </member>
        <member name="F:PetaPoco.Utilities.SQLParts.SqlOrderBy">
            <summary>
                The SQL Order By
            </summary>
        </member>
    </members>
</doc>
lib/Prow.AlipayAuth/Prow.AlipayAuth.xml
@@ -62,11 +62,12 @@
            </summary>
            <returns></returns>
        </member>
        <member name="M:Prow.AlipayAuth.AlipayHandler.ExchangeCodeAsync(Microsoft.AspNetCore.Authentication.OAuth.OAuthCodeExchangeContext)">
        <member name="M:Prow.AlipayAuth.AlipayHandler.ExchangeCodeAsync(System.String,System.String)">
            <summary>
            通过 code 获取 access_token 方法
            </summary>
            <param name="context"></param>
            <param name="code"></param>
            <param name="redirectUri"></param>
            <remarks>标准的都是 post 方法 微信使用 get</remarks>
        </member>
        <member name="M:Prow.AlipayAuth.AlipayHandler.BuildUserInfoUrl(Microsoft.AspNetCore.Authentication.OAuth.OAuthTokenResponse)">
@@ -145,7 +146,7 @@
            Alipay 用户扩展操作类
            </summary>
        </member>
        <member name="M:Prow.AlipayAuth.AlipayUserExtensions.ToAlipayUser(System.Text.Json.JsonElement)">
        <member name="M:Prow.AlipayAuth.AlipayUserExtensions.ToAlipayUser(Newtonsoft.Json.Linq.JObject)">
            <summary>
            格式化为 Alipay 用户方法
            </summary>
lib/Prow.Cache/Prow.Cache.xml
@@ -55,7 +55,17 @@
        </member>
        <member name="T:Prow.Cache.CacheCorsItem">
            <summary>
            CacheCorsItem 实体类
            CacheCorsItem 配置类
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheCorsItem.Enabled">
            <summary>
            获得/设置 是否启用 默认 false
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheCorsItem.Key">
            <summary>
            获得/设置 缓存键值
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheCorsItem.Url">
@@ -202,9 +212,19 @@
            <returns></returns>
        </member>
        <member name="T:Prow.Cache.CacheOption">
             <summary>
             </summary>
            <summary>
            缓存配置项定义类
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheOption.Enabled">
            <summary>
            获得/设置 是否启用 默认值 true 启用本配置项
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheOption.Key">
            <summary>
            获得/设置 缓存键值,配置文件中的 Key
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheOption.Interval">
            <summary>
@@ -219,17 +239,6 @@
        <member name="P:Prow.Cache.CacheOption.SlidingExpiration">
            <summary>
            获得/设置 缓存是否自动延长默认值 false
            </summary>
        </member>
        <member name="M:Prow.Cache.CacheOption.#ctor(System.String)">
            <summary>
            默认构造函数
            </summary>
            <param name="key"></param>
        </member>
        <member name="M:Prow.Cache.CacheOption.#ctor">
            <summary>
            默认构造函数
            </summary>
        </member>
        <member name="T:Prow.Cache.CacheOptions">
@@ -252,80 +261,29 @@
            获得/设置 CacheOption 缓存配置集合
            </summary>
        </member>
        <member name="T:Prow.Cache.CacheCorsItemCollection">
        <member name="T:Prow.Cache.CacheConfigureOptions`1">
            <summary>
            缓存配置相集合
            缓存配置类
            </summary>
            <typeparam name="TOptions"></typeparam>
        </member>
        <member name="T:Prow.Cache.CacheListSection">
        <member name="M:Prow.Cache.CacheConfigureOptions`1.#ctor(Microsoft.Extensions.Configuration.IConfiguration)">
            <summary>
            CacheList 配置项操作类
            构造函数
            </summary>
        </member>
        <member name="F:Prow.Cache.CacheListSection.DefaultSectionName">
            <summary>
            默认配置小节项名称,默认值 cacheManagerList
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheListSection.Enabled">
            <summary>
            获得 是否启用本设置,默认为启用 true
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheListSection.CorsItems">
            <summary>
            CorsItems
            </summary>
        </member>
        <member name="M:Prow.Cache.CacheListSection.GetSection">
            <summary>
            获取配置小节方法
            </summary>
            <returns></returns>
        </member>
        <member name="T:Prow.Cache.CacheOptionCollection">
            <summary>
            缓存配置相集合
            </summary>
        </member>
        <member name="T:Prow.Cache.CacheSection">
            <summary>
            CacheSection 操作类
            </summary>
        </member>
        <member name="F:Prow.Cache.CacheSection.DefaultSectionName">
            <summary>
            默认配置小节项名称,默认是cacheManager
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheSection.Enabled">
            <summary>
            获得 是否启用本设置,默认为启用(true)
            </summary>
        </member>
        <member name="P:Prow.Cache.CacheSection.CacheOptions">
            <summary>
            获得 CacheOption 集合
            </summary>
        </member>
        <member name="M:Prow.Cache.CacheSection.GetSection">
            <summary>
            获取 CacheSection 配置项方法
            </summary>
            <returns></returns>
        </member>
        <member name="M:Prow.Cache.CacheSection.GetOptions">
            <summary>
            获取 CacheOptions 方法
            </summary>
            <returns>CacheOptions 实例</returns>
            <param name="configuration"></param>
        </member>
        <member name="T:Prow.Cache.DefaultCache">
            <summary>
            Cache 内部默认实现类
            </summary>
        </member>
        <member name="M:Prow.Cache.DefaultCache.#ctor">
        <member name="P:Prow.Cache.DefaultCache.Instance">
            <summary>
            ICache 实例
            </summary>
        </member>
        <member name="M:Prow.Cache.DefaultCache.#ctor(Microsoft.Extensions.Options.IOptionsMonitor{Prow.Cache.CacheOptions},Microsoft.AspNetCore.Http.IHttpContextAccessor,System.Net.Http.IHttpClientFactory)">
            <summary>
            默认构造函数
            </summary>
@@ -593,5 +551,28 @@
            获得/设置 是否自动延时过期时间
            </summary>
        </member>
        <member name="T:Microsoft.Extensions.DependencyInjection.CacheManagerServiceCollectionExtensions">
            <summary>
            配置服务注入方法扩展类
            </summary>
        </member>
        <member name="M:Microsoft.Extensions.DependencyInjection.CacheManagerServiceCollectionExtensions.AddCacheManager(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
            <summary>
            增加缓存管理到服务容器中 <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" />.
            </summary>
            <param name="services">The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" /> to add services to.</param>
            <returns>The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection"/> so that additional calls can be chained.</returns>
        </member>
        <member name="T:Microsoft.AspNetCore.Builder.CacheManagerExtensions">
            <summary>
            CacheManagerCorsHandler 中间件扩展类,负责解析 /CacheList.axd 请求
            </summary>
        </member>
        <member name="M:Microsoft.AspNetCore.Builder.CacheManagerExtensions.UseCacheManager(Microsoft.AspNetCore.Builder.IApplicationBuilder)">
            <summary>
            增加CacheManager跨站点管理中间件
            </summary>
            <param name="builder"></param>
        </member>
    </members>
</doc>
lib/Prow.Data/Prow.Data.csproj
@@ -18,13 +18,13 @@
  <ItemGroup>
    <Compile Include="..\Prow\OSPlatformPathExtenstions.cs" Link="OSPlatformPathExtenstions.cs" />
  </ItemGroup>
  <!--   暂留
  <ItemGroup>
    <PackageReference Include="Longbow.PetaPoco" Version="1.0.2" />
  </ItemGroup>
  -->
  <ItemGroup>
    <ProjectReference Include="..\PetaPoco\PetaPoco.csproj" />
  </ItemGroup>
</Project>
lib/Prow.Data/Prow.Data.xml
@@ -93,19 +93,10 @@
        </member>
        <member name="M:Prow.Data.DbManager.Create(System.String,System.Boolean)">
            <summary>
            通过 DI 服务自动读取配置文件创建 IDatabase 操作类
            通过DI服务自动读取配置文件创建 IDatabase 操作类
            </summary>
            <param name="name">配置文件中 ConnectionStrings 键值 Key</param>
            <param name="keepAlive">是否保持 Connection 一直处于 Open 状态,此参数为 True 时必须显示手动调用 Dispose 方法</param>
            <returns></returns>
        </member>
        <member name="M:Prow.Data.DbManager.Create(Microsoft.Extensions.Configuration.IConfiguration,System.String,System.Boolean)">
            <summary>
            通过指定IConfiguration配置项创建IDatabase操作类
            </summary>
            <param name="configuration">指定配置项,包含 ConnectionStrings 小节与 DB 小节</param>
            <param name="name">配置文件中 ConnectionStrings 键值 Key</param>
            <param name="keepAlive">是否保持 Connection 一直处于 Open 状态,此参数为 True 时必须显示手动调用 Dispose 方法</param>
            <param name="name">配置文件中 ConnectionStrings 键值Key</param>
            <param name="keepAlive">是否保持 Connection 一直处于 Open 状态,此参数为True时必须显示手动调用 Dispose 方法</param>
            <returns></returns>
        </member>
        <member name="M:Prow.Data.DbManager.Create(Prow.Data.DatabaseOption)">
@@ -117,28 +108,15 @@
        </member>
        <member name="M:Prow.Data.DbManager.GetConnectionString(System.String)">
            <summary>
            获取数据库连接字符串
            获取连接字符串方法
            </summary>
            <param name="name">为空时获取第一个连接字符串</param>
            <returns></returns>
        </member>
        <member name="M:Prow.Data.DbManager.GetMongoDB(System.String)">
            <summary>
            获取 MongoDB 连接字符串信息
            </summary>
            <param name="name">配置文件中连接字符串配置项名称</param>
            <param name="name">连接字符串 name</param>
            <returns></returns>
        </member>
        <member name="T:Prow.Data.DefaultDbAdapter">
            <summary>
            数据库适配操作类
            </summary>
        </member>
        <member name="M:Prow.Data.DefaultDbAdapter.#ctor(Microsoft.Extensions.Configuration.IConfiguration)">
            <summary>
            默认构造函数
            </summary>
            <param name="configuration">IConfiguration 实例</param>
        </member>
        <member name="M:Prow.Data.DefaultDbAdapter.Create(System.String,System.Boolean)">
            <summary>
@@ -147,14 +125,6 @@
            <param name="name">连接字符串名称</param>
            <param name="keepAlive">是否保持Connection一直处于Open状态,此参数为True时必须显示手动调用Dispose方法</param>
            <returns>IDatabase 实例</returns>
        </member>
        <member name="M:Prow.Data.DefaultDbAdapter.RetrieveDatabaseOption(Microsoft.Extensions.Configuration.IConfiguration,System.String)">
            <summary>
            通过配置文件获得 DatabaseOption 实例
            </summary>
            <param name="configuration">IConfiguration 实例</param>
            <param name="name">连接字符串名称</param>
            <returns>DatabaseOption 实例</returns>
        </member>
        <member name="M:Prow.Data.DefaultDbAdapter.Create(Prow.Data.DatabaseOption)">
            <summary>
@@ -168,11 +138,10 @@
            IDbContext 默认实现类
            </summary>
        </member>
        <member name="M:Prow.Data.DefaultDbContext`1.#ctor(Microsoft.Extensions.Configuration.IConfiguration)">
        <member name="M:Prow.Data.DefaultDbContext`1.#ctor">
            <summary>
            默认构造函数
            </summary>
            <param name="configuration">IConfiguration 实例</param>
        </member>
        <member name="M:Prow.Data.DefaultDbContext`1.Create">
            <summary>
@@ -225,43 +194,19 @@
            IDatabase Logger 扩展
            </summary>
        </member>
        <member name="M:Prow.Data.DatabaseExtensions.OnCommandExecuted(PetaPoco.IDatabase,System.Action{System.IServiceProvider})">
        <member name="M:Prow.Data.DatabaseExtensions.OnCommandExecuted(PetaPoco.IDatabase,System.Action)">
            <summary>
            IDatabase 实例数据库脚本执行前回调方法
            </summary>
            <param name="db"></param>
            <param name="executedCallback"></param>
        </member>
        <member name="M:Prow.Data.DatabaseExtensions.OnCommandExecuting(PetaPoco.IDatabase,System.Action{System.IServiceProvider})">
        <member name="M:Prow.Data.DatabaseExtensions.OnCommandExecuting(PetaPoco.IDatabase,System.Action)">
            <summary>
            IDatabase 实例数据库脚本执行后回调方法
            </summary>
            <param name="db"></param>
            <param name="executingCallback"></param>
        </member>
        <member name="T:Microsoft.Extensions.DependencyInjection.DatabaseServiceCollectionExtensions">
            <summary>
            注入数据库服务扩展类
            </summary>
        </member>
        <member name="P:Microsoft.Extensions.DependencyInjection.DatabaseServiceCollectionExtensions.ServiceProvider">
            <summary>
            获取 容器集合
            </summary>
        </member>
        <member name="M:Microsoft.Extensions.DependencyInjection.DatabaseServiceCollectionExtensions.AddDbAdapter(Microsoft.Extensions.DependencyInjection.IServiceCollection)">
            <summary>
            增加数据库适配框架到服务容器中 <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" />.
            </summary>
            <param name="services">The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection" /> to add services to.</param>
            <returns>The <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection"/> so that additional calls can be chained.</returns>
        </member>
        <member name="M:System.OSPlatformPathExtenstions.GetOSPlatformPath(System.String)">
            <summary>
            获得 当前操作系统目录分隔符的路径
            </summary>
            <param name="originalString">原始路径字符串</param>
            <returns></returns>
        </member>
    </members>
</doc>
lib/Prow.OAuth/Prow.OAuth.xml
@@ -110,19 +110,11 @@
            微信用户扩展操作类
            </summary>
        </member>
        <member name="M:Prow.OAuth.OAuthUserExtensions.ToAuthUser(System.Text.Json.JsonElement)">
        <member name="M:Prow.OAuth.OAuthUserExtensions.ToAuthUser(Newtonsoft.Json.Linq.JObject)">
            <summary>
            格式化为微信用户方法
            </summary>
            <param name="element"></param>
            <returns></returns>
        </member>
        <member name="M:Prow.OAuth.OAuthUserExtensions.TryGetValue(System.Text.Json.JsonElement.ObjectEnumerator,System.String)">
            <summary>
            读取指定键值的 Json 数值
            </summary>
            <param name="target"></param>
            <param name="propertyName"></param>
            <returns></returns>
        </member>
    </members>
lib/Prow.TencentAuth/Prow.TencentAuth.xml
@@ -61,12 +61,11 @@
            <param name="redirectUri"></param>
            <returns></returns>
        </member>
        <member name="M:Prow.TencentAuth.TencentHandler.ExchangeCodeAsync(System.String,System.String)">
        <member name="M:Prow.TencentAuth.TencentHandler.ExchangeCodeAsync(Microsoft.AspNetCore.Authentication.OAuth.OAuthCodeExchangeContext)">
            <summary>
            通过 code 获取 access_token 方法
            </summary>
            <param name="code"></param>
            <param name="redirectUri"></param>
            <param name="context"></param>
            <remarks>标准的都是 post 方法 微信使用 get</remarks>
        </member>
        <member name="M:Prow.TencentAuth.TencentHandler.HandleUserInfoAsync(Microsoft.AspNetCore.Authentication.OAuth.OAuthTokenResponse)">
@@ -126,7 +125,7 @@
            腾讯 QQ 用户扩展操作类
            </summary>
        </member>
        <member name="M:Prow.TencentAuth.AlipayUserExtensions.ToTencentUser(Newtonsoft.Json.Linq.JObject)">
        <member name="M:Prow.TencentAuth.AlipayUserExtensions.ToTencentUser(System.Text.Json.JsonElement)">
            <summary>
            格式化为腾讯 QQ 用户方法
            </summary>
lib/Prow.WeChatAuth/Prow.WeChatAuth.xml
@@ -56,12 +56,11 @@
            <param name="redirectUri"></param>
            <returns></returns>
        </member>
        <member name="M:Prow.WeChatAuth.WeChatHandler.ExchangeCodeAsync(System.String,System.String)">
        <member name="M:Prow.WeChatAuth.WeChatHandler.ExchangeCodeAsync(Microsoft.AspNetCore.Authentication.OAuth.OAuthCodeExchangeContext)">
            <summary>
            通过 code 获取 access_token 方法
            </summary>
            <param name="code"></param>
            <param name="redirectUri"></param>
            <param name="context"></param>
            <remarks>标准的都是 post 方法 微信使用 get</remarks>
        </member>
        <member name="M:Prow.WeChatAuth.WeChatHandler.BuildUserInfoUrl(Microsoft.AspNetCore.Authentication.OAuth.OAuthTokenResponse)">
@@ -123,7 +122,7 @@
            微信用户扩展操作类
            </summary>
        </member>
        <member name="M:Prow.WeChatAuth.WeChatUserExtensions.ToWeChatUser(Newtonsoft.Json.Linq.JObject)">
        <member name="M:Prow.WeChatAuth.WeChatUserExtensions.ToWeChatUser(System.Text.Json.JsonElement)">
            <summary>
            格式化为微信用户方法
            </summary>
src/admin/Bootstrap.Admin/BootstrapAdmin.db
Binary files differ
src/admin/Bootstrap.Admin/Pages/Views/Index.razor
@@ -6,7 +6,7 @@
@inject IJSRuntime JSRuntime
<Section ShowCardTitle="@Layout.Model.ShowCardTitle" LockScreenPeriod="@Layout.Model.LockScreenPeriod" ShowBackground="true">
    <h4 style="color: #fff; padding: 1rem 0 0 1rem;">欢迎使用后台管理</h4>
    <h4 style="color: #fff; padding: 1rem 0 0 1rem;">欢迎使用小牛集卡后台管理</h4>
</Section>
@code {
src/admin/Bootstrap.Admin/Views/Admin/Index.cshtml
@@ -25,4 +25,4 @@
        });
    </script>
}
<h4>欢迎使用后台管理</h4>
<h4>欢迎使用小牛集卡后台管理</h4>
src/admin/Bootstrap.Admin/appsettings.Development.json
@@ -21,18 +21,17 @@
      "Url": "https://client.sdgxgz.com/api/Interface/Log"
    }
  },
  "AutoGenerateDatabase": true,
  "AutoGenerateDatabase": false,
  "DB": [
    {
      "Enabled": false,
      "Enabled": true,
      "ProviderName": "SqlServer",
      "SqlFolder": "..\\..\\..\\db\\SqlServer",
      "ConnectionStrings": {
        "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=sa"
        "ba": "Data Source=123.56.102.130;Initial Catalog=XNJK;User ID=sa;Password=cqprow1234."
      }
    },
    {
      "Enabled": true,
      "Enabled": false,
      "ProviderName": "Sqlite",
      "SqlFolder": "..\\..\\..\\db\\SQLite",
      "ConnectionStrings": {
src/admin/Bootstrap.Admin/appsettings.json
@@ -19,7 +19,7 @@
    }
  },
  "ConnectionStrings": {
    "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=sa"
    "ba": "Data Source=123.56.102.130;Initial Catalog=XNJK;User ID=sa;Password=cqprow1234."
  },
  "AutoGenerateDatabase": false,
  "DB": [
@@ -27,7 +27,7 @@
      "Enabled": true,
      "ProviderName": "SqlServer",
      "ConnectionStrings": {
        "ba": "Data Source=.;Initial Catalog=BootstrapAdmin;User ID=sa;Password=prow123"
        "ba": "Data Source=123.56.102.130;Initial Catalog=XNJK;User ID=sa;Password=cqprow1234."
      }
    },
    {