diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite
index 04bafa1..38c0f60 100644
Binary files a/.vs/slnx.sqlite and b/.vs/slnx.sqlite differ
diff --git a/RC/.vs/RC/DesignTimeBuild/.dtbcache.v2 b/RC/.vs/RC/DesignTimeBuild/.dtbcache.v2
new file mode 100644
index 0000000..a80f7db
Binary files /dev/null and b/RC/.vs/RC/DesignTimeBuild/.dtbcache.v2 differ
diff --git a/RC/.vs/RC/config/applicationhost.config b/RC/.vs/RC/config/applicationhost.config
new file mode 100644
index 0000000..0c68ff2
--- /dev/null
+++ b/RC/.vs/RC/config/applicationhost.config
@@ -0,0 +1,973 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/RC/.vs/RC/v16/.suo b/RC/.vs/RC/v16/.suo
index f7ca0c5..e980112 100644
Binary files a/RC/.vs/RC/v16/.suo and b/RC/.vs/RC/v16/.suo differ
diff --git a/RC/Rs.Common/Utils.cs b/RC/Rs.Common/Utils.cs
new file mode 100644
index 0000000..42eb036
--- /dev/null
+++ b/RC/Rs.Common/Utils.cs
@@ -0,0 +1,47 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Common
+{
+ public class Utils
+ {
+ ///
+ /// 系统绝对目录
+ ///
+ public static string RootDictionaryPath { get; set; } = AppContext.BaseDirectory;
+ ///
+ /// 系统虚拟目录
+ ///
+ ///
+ ///
+ public static string ContentRootMapPath(string virtualPath)
+ {
+ if (string.IsNullOrEmpty(virtualPath))
+ {
+ return string.Empty;
+ }
+ else
+ {
+ var path = Path.DirectorySeparatorChar.ToString();
+ var altPath = Path.AltDirectorySeparatorChar.ToString();
+ if (!RootDictionaryPath.EndsWith(path) && !RootDictionaryPath.EndsWith(altPath))
+ {
+ RootDictionaryPath += path;
+ }
+
+ if (virtualPath.StartsWith("~/"))
+ {
+ return virtualPath.Replace("~/", RootDictionaryPath).Replace("/", path);
+ }
+ else
+ {
+ return Path.Combine(RootDictionaryPath, virtualPath);
+ }
+ }
+ }
+ }
+}
diff --git a/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.deps.json b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.deps.json
new file mode 100644
index 0000000..81f075c
--- /dev/null
+++ b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.deps.json
@@ -0,0 +1,23 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v5.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v5.0": {
+ "Rs.Common/1.0.0": {
+ "runtime": {
+ "Rs.Common.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Rs.Common/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.dll b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.dll
new file mode 100644
index 0000000..f73ebfa
Binary files /dev/null and b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.dll differ
diff --git a/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.pdb b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.pdb
new file mode 100644
index 0000000..9381c67
Binary files /dev/null and b/RC/Rs.Common/bin/Debug/net5.0/Rs.Common.pdb differ
diff --git a/RC/Rs.Common/bin/Debug/net5.0/ref/Rs.Common.dll b/RC/Rs.Common/bin/Debug/net5.0/ref/Rs.Common.dll
new file mode 100644
index 0000000..690b500
Binary files /dev/null and b/RC/Rs.Common/bin/Debug/net5.0/ref/Rs.Common.dll differ
diff --git a/RC/Rs.Common/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/RC/Rs.Common/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2f7e5ec
--- /dev/null
+++ b/RC/Rs.Common/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]
diff --git a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.CoreCompileInputs.cache b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..66e3779
--- /dev/null
+++ b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+d659860bb34e5f7ec981bde18be81f68f849a318
diff --git a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.FileListAbsolute.txt b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..4063898
--- /dev/null
+++ b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csproj.FileListAbsolute.txt
@@ -0,0 +1,12 @@
+D:\RC\RC\Rs.Common\bin\Debug\net5.0\Rs.Common.deps.json
+D:\RC\RC\Rs.Common\bin\Debug\net5.0\Rs.Common.dll
+D:\RC\RC\Rs.Common\bin\Debug\net5.0\ref\Rs.Common.dll
+D:\RC\RC\Rs.Common\bin\Debug\net5.0\Rs.Common.pdb
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.GeneratedMSBuildEditorConfig.editorconfig
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.AssemblyInfoInputs.cache
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.AssemblyInfo.cs
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.csproj.CoreCompileInputs.cache
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.dll
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\ref\Rs.Common.dll
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.pdb
+D:\RC\RC\Rs.Common\obj\Debug\net5.0\Rs.Common.csprojAssemblyReference.cache
diff --git a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csprojAssemblyReference.cache b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csprojAssemblyReference.cache
index 7924edd..4a3b1bc 100644
Binary files a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csprojAssemblyReference.cache and b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.csprojAssemblyReference.cache differ
diff --git a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.dll b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.dll
new file mode 100644
index 0000000..f73ebfa
Binary files /dev/null and b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.dll differ
diff --git a/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.pdb b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.pdb
new file mode 100644
index 0000000..9381c67
Binary files /dev/null and b/RC/Rs.Common/obj/Debug/net5.0/Rs.Common.pdb differ
diff --git a/RC/Rs.Common/obj/Debug/net5.0/ref/Rs.Common.dll b/RC/Rs.Common/obj/Debug/net5.0/ref/Rs.Common.dll
new file mode 100644
index 0000000..690b500
Binary files /dev/null and b/RC/Rs.Common/obj/Debug/net5.0/ref/Rs.Common.dll differ
diff --git a/RC/Rs.Common/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/RC/Rs.Common/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2f7e5ec
--- /dev/null
+++ b/RC/Rs.Common/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]
diff --git a/RC/Rs.Config/BaseConfig.cs b/RC/Rs.Config/BaseConfig.cs
new file mode 100644
index 0000000..d0edde7
--- /dev/null
+++ b/RC/Rs.Config/BaseConfig.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Config
+{
+ ///
+ /// 配置文件基类
+ ///
+ public abstract class BaseConfig
+ {
+ }
+}
diff --git a/RC/Rs.Config/CompanyInfo.cs b/RC/Rs.Config/CompanyInfo.cs
new file mode 100644
index 0000000..fe02d2f
--- /dev/null
+++ b/RC/Rs.Config/CompanyInfo.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Config
+{
+ ///
+ /// 公司基本信息
+ ///
+ public sealed class CompanyInfo
+ {
+ ///
+ /// 公司名字
+ ///
+ public string Name { get; set; } = "川渝软件开发工作室有限责任公司";
+ ///
+ /// 公司所在地址
+ ///
+ public string Address { get; set; } = "平昌县鹿鸣镇向氏集团13楼22号";
+ ///
+ /// 公司所在地邮政编码
+ ///
+ public string PostCode { get; set; } = "640014";
+ ///
+ /// 服务电话,多个电话用'|'分开
+ ///
+ public string ServerPhone { get; set; } = "15828469068|0827-6818083|028-86131401";
+ ///
+ /// 投诉电话
+ ///
+ public string ComplainPhone { get; set; } = "12345";
+ ///
+ /// 传真
+ ///
+ public string Fax { get; set; }
+ ///
+ /// Emil
+ ///
+ public string Email { get; set; } = "527883283@qq.com";
+ }
+}
diff --git a/RC/Rs.Config/DbConfig.cs b/RC/Rs.Config/DbConfig.cs
new file mode 100644
index 0000000..56657ae
--- /dev/null
+++ b/RC/Rs.Config/DbConfig.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Config
+{
+ [Serializable]
+ ///
+ /// 数据库配置
+ ///
+ public sealed class DbConfig:BaseConfig
+ {
+ public string Host { get; set; }
+ public string Port { get; set; }
+ public string Name { get; set; }
+ public string UserName { get; set; }
+ public string PassWord { get; set; }
+ }
+}
diff --git a/RC/Rs.Config/RsConfig.cs b/RC/Rs.Config/RsConfig.cs
new file mode 100644
index 0000000..3310923
--- /dev/null
+++ b/RC/Rs.Config/RsConfig.cs
@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Config
+{
+ [Serializable]
+ ///
+ /// 系统配置对象
+ ///
+ public sealed class RsConfig:BaseConfig
+ {
+ ///
+ /// 加密字符串
+ ///
+ public string Encrpy { get; set; }
+ ///
+ /// 系统路径
+ ///
+ public string ApplicationPath { get; set; } = "/";
+ ///
+ /// 文件上传路径
+ ///
+ public string UpLoadPath { get; set; } = "~/Upload";
+ ///
+ /// 公司信息
+ ///
+ public CompanyInfo CompanyInfo { get; set; } = new CompanyInfo();
+ }
+}
diff --git a/RC/Rs.Config/SiteConfig.cs b/RC/Rs.Config/SiteConfig.cs
new file mode 100644
index 0000000..df7a174
--- /dev/null
+++ b/RC/Rs.Config/SiteConfig.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Rs.Config
+{
+ [Serializable]
+ ///
+ /// 系统配置
+ ///
+ public sealed class SiteConfig:BaseConfig
+ {
+ ///
+ /// 系统名称
+ ///
+ public string SiteName { get; set; } = "川渝人才网|川渝两地专业的人才网";
+ ///
+ /// 系统域名
+ ///
+ public string Http { get; set; } = "CyRc.com";
+ ///
+ /// 系统SEO优化,关键字
+ ///
+ public string KeyWords { get; set; } = "川渝人才,川渝人才网,大四川大重庆人才网,四川招聘,重庆招聘,CyRc.com,成渝找工作";
+ ///
+ /// 系统SEO优化,描述
+ ///
+ public string Description { get; set; } = "川渝人才网是四川重庆两地人才求职和大四川大重庆企业招聘最佳选择,作为川渝人才网更专注于四川重庆两地网络招聘和人才精英的选拔,给企业部门提供精确人才简历查询,让四川、重庆两地人才透过职位搜索功能查阅川渝人才市场动态行情,正确的测评四川重庆两地人才能力等。";
+ ///
+ /// 电信业务经营许可证
+ ///
+ public string ICPLience { get; set; }
+ ///
+ /// 网站备案号
+ ///
+ public string WRNCode { get; set; }
+ ///
+ /// 网公安备案号
+ ///
+ public string IPSCode { get; set; }
+ }
+}
diff --git a/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.dll b/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.dll
new file mode 100644
index 0000000..f73ebfa
Binary files /dev/null and b/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.dll differ
diff --git a/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.pdb b/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.pdb
new file mode 100644
index 0000000..9381c67
Binary files /dev/null and b/RC/Rs.Config/bin/Debug/net5.0/Rs.Common.pdb differ
diff --git a/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.deps.json b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.deps.json
new file mode 100644
index 0000000..748c312
--- /dev/null
+++ b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.deps.json
@@ -0,0 +1,36 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v5.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v5.0": {
+ "Rs.Config/1.0.0": {
+ "dependencies": {
+ "Rs.Common": "1.0.0"
+ },
+ "runtime": {
+ "Rs.Config.dll": {}
+ }
+ },
+ "Rs.Common/1.0.0": {
+ "runtime": {
+ "Rs.Common.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Rs.Config/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Rs.Common/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.dll b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.dll
new file mode 100644
index 0000000..31d71d4
Binary files /dev/null and b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.dll differ
diff --git a/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.pdb b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.pdb
new file mode 100644
index 0000000..f29dffd
Binary files /dev/null and b/RC/Rs.Config/bin/Debug/net5.0/Rs.Config.pdb differ
diff --git a/RC/Rs.Config/bin/Debug/net5.0/ref/Rs.Config.dll b/RC/Rs.Config/bin/Debug/net5.0/ref/Rs.Config.dll
new file mode 100644
index 0000000..3fb22e8
Binary files /dev/null and b/RC/Rs.Config/bin/Debug/net5.0/ref/Rs.Config.dll differ
diff --git a/RC/Rs.Config/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/RC/Rs.Config/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2f7e5ec
--- /dev/null
+++ b/RC/Rs.Config/obj/Debug/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.CopyComplete b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.CopyComplete
new file mode 100644
index 0000000..e69de29
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.CoreCompileInputs.cache b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..4c329c9
--- /dev/null
+++ b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+47b59c1219a91a37f267d683e7655c28090f60c1
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.FileListAbsolute.txt b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..9994e77
--- /dev/null
+++ b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csproj.FileListAbsolute.txt
@@ -0,0 +1,15 @@
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\Rs.Config.deps.json
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\Rs.Config.dll
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\ref\Rs.Config.dll
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\Rs.Config.pdb
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\Rs.Common.dll
+D:\RC\RC\Rs.Config\bin\Debug\net5.0\Rs.Common.pdb
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.csprojAssemblyReference.cache
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.GeneratedMSBuildEditorConfig.editorconfig
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.AssemblyInfoInputs.cache
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.AssemblyInfo.cs
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.csproj.CoreCompileInputs.cache
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.csproj.CopyComplete
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.dll
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\ref\Rs.Config.dll
+D:\RC\RC\Rs.Config\obj\Debug\net5.0\Rs.Config.pdb
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csprojAssemblyReference.cache b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csprojAssemblyReference.cache
index 7924edd..a7bdf91 100644
Binary files a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csprojAssemblyReference.cache and b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.csprojAssemblyReference.cache differ
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.dll b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.dll
new file mode 100644
index 0000000..31d71d4
Binary files /dev/null and b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.dll differ
diff --git a/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.pdb b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.pdb
new file mode 100644
index 0000000..f29dffd
Binary files /dev/null and b/RC/Rs.Config/obj/Debug/net5.0/Rs.Config.pdb differ
diff --git a/RC/Rs.Config/obj/Debug/net5.0/ref/Rs.Config.dll b/RC/Rs.Config/obj/Debug/net5.0/ref/Rs.Config.dll
new file mode 100644
index 0000000..3fb22e8
Binary files /dev/null and b/RC/Rs.Config/obj/Debug/net5.0/ref/Rs.Config.dll differ
diff --git a/RC/Rs.Config/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs b/RC/Rs.Config/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..2f7e5ec
--- /dev/null
+++ b/RC/Rs.Config/obj/Release/net5.0/.NETCoreApp,Version=v5.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v5.0", FrameworkDisplayName = "")]
diff --git a/RC/Rs.Config/obj/Release/net5.0/Rs.Config.csprojAssemblyReference.cache b/RC/Rs.Config/obj/Release/net5.0/Rs.Config.csprojAssemblyReference.cache
index 4a3b1bc..b2de642 100644
Binary files a/RC/Rs.Config/obj/Release/net5.0/Rs.Config.csprojAssemblyReference.cache and b/RC/Rs.Config/obj/Release/net5.0/Rs.Config.csprojAssemblyReference.cache differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.dll b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.dll
new file mode 100644
index 0000000..f73ebfa
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.dll differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.pdb b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.pdb
new file mode 100644
index 0000000..9381c67
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Common.pdb differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.dll b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.dll
new file mode 100644
index 0000000..31d71d4
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.dll differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.pdb b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.pdb
new file mode 100644
index 0000000..f29dffd
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.Config.pdb differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.deps.json b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.deps.json
new file mode 100644
index 0000000..8554323
--- /dev/null
+++ b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.deps.json
@@ -0,0 +1,50 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v5.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v5.0": {
+ "Rs.DataBase/1.0.0": {
+ "dependencies": {
+ "Rs.Common": "1.0.0",
+ "Rs.Config": "1.0.0"
+ },
+ "runtime": {
+ "Rs.DataBase.dll": {}
+ }
+ },
+ "Rs.Common/1.0.0": {
+ "runtime": {
+ "Rs.Common.dll": {}
+ }
+ },
+ "Rs.Config/1.0.0": {
+ "dependencies": {
+ "Rs.Common": "1.0.0"
+ },
+ "runtime": {
+ "Rs.Config.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "Rs.DataBase/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Rs.Common/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ },
+ "Rs.Config/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.dll b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.dll
new file mode 100644
index 0000000..54c4119
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.dll differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.pdb b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.pdb
new file mode 100644
index 0000000..c3757b9
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/Rs.DataBase.pdb differ
diff --git a/RC/Rs.DataBase/bin/Debug/net5.0/ref/Rs.DataBase.dll b/RC/Rs.DataBase/bin/Debug/net5.0/ref/Rs.DataBase.dll
new file mode 100644
index 0000000..1990ab1
Binary files /dev/null and b/RC/Rs.DataBase/bin/Debug/net5.0/ref/Rs.DataBase.dll differ
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.CopyComplete b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.CopyComplete
new file mode 100644
index 0000000..e69de29
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.CoreCompileInputs.cache b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..86bdda3
--- /dev/null
+++ b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+95f27958bf700f59726fb1bfe52028ba2ad9e205
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.FileListAbsolute.txt b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..4608201
--- /dev/null
+++ b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csproj.FileListAbsolute.txt
@@ -0,0 +1,17 @@
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.DataBase.deps.json
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.DataBase.dll
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\ref\Rs.DataBase.dll
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.DataBase.pdb
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.Common.dll
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.Config.dll
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.Common.pdb
+D:\RC\RC\Rs.DataBase\bin\Debug\net5.0\Rs.Config.pdb
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.csprojAssemblyReference.cache
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.GeneratedMSBuildEditorConfig.editorconfig
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.AssemblyInfoInputs.cache
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.AssemblyInfo.cs
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.csproj.CoreCompileInputs.cache
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.csproj.CopyComplete
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.dll
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\ref\Rs.DataBase.dll
+D:\RC\RC\Rs.DataBase\obj\Debug\net5.0\Rs.DataBase.pdb
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csprojAssemblyReference.cache b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csprojAssemblyReference.cache
index 7924edd..a7bdf91 100644
Binary files a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csprojAssemblyReference.cache and b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.csprojAssemblyReference.cache differ
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.dll b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.dll
new file mode 100644
index 0000000..54c4119
Binary files /dev/null and b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.dll differ
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.pdb b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.pdb
new file mode 100644
index 0000000..c3757b9
Binary files /dev/null and b/RC/Rs.DataBase/obj/Debug/net5.0/Rs.DataBase.pdb differ
diff --git a/RC/Rs.DataBase/obj/Debug/net5.0/ref/Rs.DataBase.dll b/RC/Rs.DataBase/obj/Debug/net5.0/ref/Rs.DataBase.dll
new file mode 100644
index 0000000..1990ab1
Binary files /dev/null and b/RC/Rs.DataBase/obj/Debug/net5.0/ref/Rs.DataBase.dll differ
diff --git a/RC/Rs.Web/Extension.cs b/RC/Rs.Web/Extension.cs
new file mode 100644
index 0000000..d0b2ebb
--- /dev/null
+++ b/RC/Rs.Web/Extension.cs
@@ -0,0 +1,79 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Text;
+using System.Text.Json;
+using System.Xml.Linq;
+using Microsoft.Extensions.Configuration;
+using Rs.Common;
+using Rs.Config;
+
+
+namespace Rs.Web
+{
+ public static partial class Extension
+ {
+ ///
+ /// 所有的配置文件均保留在此文件夹下
+ ///
+ private static string ConfitDir = Utils.ContentRootMapPath("Config");
+ ///
+ /// 系统配置文件名称
+ ///
+ public static string SiteConfigFile = "site.json";
+ ///
+ /// 全局配置文件
+ ///
+ public static string RsConfigFile = "rs.json";
+ ///
+ /// 数据库配置文件
+ ///
+ public static string DbConfigFile = "db.json";
+ ///
+ /// 读取相应的配置文件
+ ///
+ /// 配置文件对象
+ /// JSON文件名称
+ ///
+ public static T ReadConfigFile(string jsonfilename = "rs.json")where T:BaseConfig,new()
+ {
+ if (!Directory.Exists(ConfitDir))
+ Directory.CreateDirectory(ConfitDir);
+ string filename = $"{ConfitDir}\\{jsonfilename}";
+ if (!File.Exists(filename))
+ SaveConfigFile(null,jsonfilename);
+ IConfigurationBuilder builder = new ConfigurationBuilder().AddJsonFile(filename);
+ IConfiguration configuration= builder.Build();
+ T t = configuration.Get();
+ return t;
+ }
+ ///
+ /// 配置文件保存
+ /// 保存后的JSON是字符串,未被格式化,有待解决
+ ///
+ /// 被保存对象
+ /// 文件保存路径
+ /// JSON文件名称
+ public static void SaveConfigFile(T obj, string jsonfilename = "rs.json") where T : BaseConfig, new()
+ {
+ T t =obj==null?new T():obj;
+ if (!Directory.Exists(ConfitDir))
+ Directory.CreateDirectory(ConfitDir);
+ string filename = $"{ConfitDir}\\{jsonfilename}";
+ if (!File.Exists(filename))
+ {
+ string Content = JsonSerializer.Serialize(t);
+ using (FileStream fs = new FileStream(filename, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite))
+ {
+ Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
+ using (StreamWriter writer = new StreamWriter(fs, Encoding.GetEncoding("utf-8")))
+ {
+ writer.WriteAsync(Content);
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/RC/Rs.Web/Pages/Index.razor b/RC/Rs.Web/Pages/Index.razor
index e54d914..8ddf239 100644
--- a/RC/Rs.Web/Pages/Index.razor
+++ b/RC/Rs.Web/Pages/Index.razor
@@ -1,7 +1,7 @@
@page "/"
-Hello, world!
+@*Hello, world!
Welcome to your new app.
-
+ *@
diff --git a/RC/Rs.Web/Pages/Index.razor.css b/RC/Rs.Web/Pages/Index.razor.css
new file mode 100644
index 0000000..f131d30
--- /dev/null
+++ b/RC/Rs.Web/Pages/Index.razor.css
@@ -0,0 +1,2 @@
+main {
+}
diff --git a/RC/Rs.Web/Pages/_Host.cshtml b/RC/Rs.Web/Pages/_Host.cshtml
index 64c43ad..ce24dc2 100644
--- a/RC/Rs.Web/Pages/_Host.cshtml
+++ b/RC/Rs.Web/Pages/_Host.cshtml
@@ -1,17 +1,23 @@
@page "/"
@namespace Rs.Web.Pages
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
+@using Rs.Config;
@{
Layout = null;
+ SiteConfig config = Extension.ReadConfigFile(Extension.SiteConfigFile);
}
+
- Rs.Web
+ @config.SiteName-@config.Http
+
+
+
diff --git a/RC/Rs.Web/Rs.Web.csproj b/RC/Rs.Web/Rs.Web.csproj
index be63ead..63e54e2 100644
--- a/RC/Rs.Web/Rs.Web.csproj
+++ b/RC/Rs.Web/Rs.Web.csproj
@@ -4,10 +4,36 @@
net5.0
+
+
+
+
+
+ <_ContentIncludedByDefault Remove="compilerconfig.json" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+ PreserveNewest
+
+
+ PreserveNewest
+
+
+
diff --git a/RC/Rs.Web/Shared/MainLayout.razor b/RC/Rs.Web/Shared/MainLayout.razor
index 2281c4f..857023a 100644
--- a/RC/Rs.Web/Shared/MainLayout.razor
+++ b/RC/Rs.Web/Shared/MainLayout.razor
@@ -1,17 +1,95 @@
@inherits LayoutComponentBase
+@using Rs.Config;
+@{
+ RsConfig rsConfig = Extension.ReadConfigFile();
+ SiteConfig siteConfig = Extension.ReadConfigFile(Extension.SiteConfigFile);
+}
-
-