"use strict";(self.webpackChunkfurion=self.webpackChunkfurion||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"docs":[{"type":"category","label":"1. \u9644\u5f55","items":[{"type":"link","label":"1.1 \u4ecb\u7ecd","href":"/docs/","docId":"introduce","unlisted":false},{"type":"link","label":"1.2 \u5173\u4e8e\u4f5c\u8005","href":"/docs/author","docId":"author","unlisted":false},{"type":"link","label":"1.3 \u793a\u4f8b\u67b6\u6784\u8bf4\u660e","href":"/docs/source","docId":"source","unlisted":false},{"type":"link","label":"1.4 \u5f00\u6e90\u6848\u4f8b","href":"/docs/case","docId":"case","unlisted":false},{"type":"link","label":"1.5 \u652f\u6301 Furion","href":"/docs/donate","docId":"donate","unlisted":false},{"type":"link","label":"1.6 \u66f4\u65b0\u65e5\u5fd7","href":"/docs/upgrade","docId":"upgrade","unlisted":false},{"type":"link","label":"1.7 \u53d1\u5c55\u5927\u4e8b\u8bb0","href":"/docs/course","docId":"course","unlisted":false},{"type":"link","label":"1.8 \u8def\u7ebf\u56fe/\u8ba1\u5212","href":"/docs/target","docId":"target","unlisted":false},{"type":"link","label":"1.9 \u6846\u67b6\u5b9a\u4f4d","href":"/docs/position","docId":"position","unlisted":false},{"type":"link","label":"1.10 \u4e3a\u4ec0\u4e48\u662f Furion\uff1f","href":"/docs/whyfurion","docId":"whyfurion","unlisted":false},{"type":"link","label":"1.11 VIP \u670d\u52a1 \u2728","href":"/docs/subscribe","docId":"subscribe","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/appendix"},{"type":"category","label":"2. \u5165\u95e8\u6307\u5357","items":[{"type":"link","label":"2.1 \u5165\u95e8\u6307\u5357","href":"/docs/serverun","docId":"serverun","unlisted":false},{"type":"link","label":"2.2 ASP.NET 5 \u96c6\u6210","href":"/docs/get-start-net5","docId":"get-start-net5","unlisted":false},{"type":"link","label":"2.3 ASP.NET 6 \u96c6\u6210","href":"/docs/get-start-net6","docId":"get-start-net6","unlisted":false},{"type":"link","label":"2.4 ASP.NET 7 \u96c6\u6210","href":"/docs/get-start-net7","docId":"get-start-net7","unlisted":false},{"type":"link","label":"2.5 ASP.NET 8 \u96c6\u6210 \u2728","href":"/docs/get-start-net8","docId":"get-start-net8","unlisted":false},{"type":"link","label":"2.6 \u5b98\u65b9\u811a\u624b\u67b6","href":"/docs/template","docId":"template","unlisted":false},{"type":"link","label":"2.7 \u624b\u52a8\u642d\u5efa\u5206\u5c42","href":"/docs/reference","docId":"reference","unlisted":false},{"type":"link","label":"2.8 \u795e\u5947\u7684 Inject","href":"/docs/inject","docId":"inject","unlisted":false},{"type":"link","label":"2.9 .NET5 \u5347\u7ea7 .NET6","href":"/docs/net5-to-net6","docId":"net5-to-net6","unlisted":false},{"type":"link","label":"2.10 .NET6 \u5347\u7ea7 .NET7","href":"/docs/net6-to-net7","docId":"net6-to-net7","unlisted":false},{"type":"link","label":"2.11 .NET7 \u5347\u7ea7 .NET8 \u2728","href":"/docs/net7-to-net8","docId":"net7-to-net8","unlisted":false},{"type":"link","label":"2.12 GlobalUsing \u4f7f\u7528","href":"/docs/globalusing","docId":"globalusing","unlisted":false},{"type":"link","label":"2.13 JSON Schema \u4f7f\u7528","href":"/docs/jsonschema","docId":"jsonschema","unlisted":false},{"type":"link","label":"2.14 Visual Studio \u9ad8\u6548\u7387","href":"/docs/vsfast","docId":"vsfast","unlisted":false},{"type":"link","label":"2.15 NuGet \u672c\u5730\u8c03\u8bd5\u5305","href":"/docs/nuget-local","docId":"nuget-local","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/getstart"},{"type":"category","label":"3. \u5e94\u7528\u542f\u52a8","items":[{"type":"link","label":"3.1 AppStartup \u542f\u52a8","href":"/docs/appstartup","docId":"appstartup","unlisted":false},{"type":"link","label":"3.2 \u7ec4\u4ef6\u5316\u542f\u52a8","href":"/docs/component","docId":"component","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/appstart"},{"type":"category","label":"4. \u914d\u7f6e\u4e0e\u9009\u9879","items":[{"type":"link","label":"4.1 \u914d\u7f6e","href":"/docs/configuration","docId":"configuration","unlisted":false},{"type":"link","label":"4.2 \u9009\u9879","href":"/docs/options","docId":"options","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/configuration"},{"type":"category","label":"5. Web \u5e94\u7528\u5f00\u53d1","items":[{"type":"link","label":"5.1 \u52a8\u6001 WebAPI","href":"/docs/dynamic-api-controller","docId":"dynamic-api-controller","unlisted":false},{"type":"link","label":"5.2 HttpContext","href":"/docs/httpcontext","docId":"httpcontext","unlisted":false},{"type":"link","label":"5.3 \u7b5b\u9009\u5668/\u62e6\u622a\u5668/\u8fc7\u6ee4\u5668/AOP","href":"/docs/filter","docId":"filter","unlisted":false},{"type":"link","label":"5.4 \u8bf7\u6c42\u5ba1\u8ba1\u65e5\u5fd7 (Audit)","href":"/docs/audit","docId":"audit","unlisted":false},{"type":"link","label":"5.5 \u4e2d\u95f4\u4ef6 (Middleware)","href":"/docs/middleware","docId":"middleware","unlisted":false},{"type":"link","label":"5.6 Vue/React/Angular \u8bf7\u6c42\u4ee3\u7406","href":"/docs/clientapi","docId":"clientapi","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/web"},{"type":"link","label":"6. \u89c4\u8303\u5316\u63a5\u53e3\u6587\u6863 (Swagger)","href":"/docs/specification-document","docId":"specification-document","unlisted":false},{"type":"link","label":"7. \u53cb\u597d\u5f02\u5e38\u5904\u7406","href":"/docs/friendly-exception","docId":"friendly-exception","unlisted":false},{"type":"link","label":"8. \u6570\u636e\u6821\u9a8c","href":"/docs/data-validation","docId":"data-validation","unlisted":false},{"type":"category","label":"9. \u6570\u636e\u5e93\u64cd\u4f5c\u6307\u5357\uff08EFCore\uff09","items":[{"type":"link","label":"9.1 \u5165\u95e8\u7b80\u8981 \u2728","href":"/docs/dbcontext-start","docId":"dbcontext-start","unlisted":false},{"type":"link","label":"9.2 \u6570\u636e\u5e93\u4e0a\u4e0b\u6587","href":"/docs/dbcontext","docId":"dbcontext","unlisted":false},{"type":"link","label":"9.3 \u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u5b9a\u4f4d\u5668","href":"/docs/dbcontext-locator","docId":"dbcontext-locator","unlisted":false},{"type":"link","label":"9.4 \u6570\u636e\u5e93\u5b9e\u4f53","href":"/docs/entity","docId":"entity","unlisted":false},{"type":"link","label":"9.5 \u4ed3\u50a8\u6a21\u5f0f (Repository)","href":"/docs/dbcontext-repository","docId":"dbcontext-repository","unlisted":false},{"type":"link","label":"9.6 \u65b0\u589e\u64cd\u4f5c","href":"/docs/dbcontext-add","docId":"dbcontext-add","unlisted":false},{"type":"link","label":"9.7 \u66f4\u65b0\u64cd\u4f5c","href":"/docs/dbcontext-update","docId":"dbcontext-update","unlisted":false},{"type":"link","label":"9.8 \u65b0\u589e\u6216\u66f4\u65b0\u64cd\u4f5c","href":"/docs/dbcontext-add-or-update","docId":"dbcontext-add-or-update","unlisted":false},{"type":"link","label":"9.9 \u5220\u9664\u64cd\u4f5c","href":"/docs/dbcontext-delete","docId":"dbcontext-delete","unlisted":false},{"type":"link","label":"9.10 \u6279\u91cf\u64cd\u4f5c","href":"/docs/dbcontext-batch","docId":"dbcontext-batch","unlisted":false},{"type":"link","label":"9.11 \u67e5\u8be2\u64cd\u4f5c","href":"/docs/dbcontext-query","docId":"dbcontext-query","unlisted":false},{"type":"link","label":"9.12 \u9ad8\u7ea7\u67e5\u8be2\u64cd\u4f5c","href":"/docs/dbcontext-hight-query","docId":"dbcontext-hight-query","unlisted":false},{"type":"link","label":"9.13 \u89c6\u56fe\u64cd\u4f5c","href":"/docs/dbcontext-view","docId":"dbcontext-view","unlisted":false},{"type":"link","label":"9.14 \u5b58\u50a8\u8fc7\u7a0b\u64cd\u4f5c","href":"/docs/dbcontext-proc","docId":"dbcontext-proc","unlisted":false},{"type":"link","label":"9.15 \u51fd\u6570\u64cd\u4f5c","href":"/docs/dbcontext-function","docId":"dbcontext-function","unlisted":false},{"type":"link","label":"9.16 Sql \u64cd\u4f5c","href":"/docs/dbcontext-sql","docId":"dbcontext-sql","unlisted":false},{"type":"link","label":"9.17 Sql \u6a21\u677f","href":"/docs/dbcontext-sql-template","docId":"dbcontext-sql-template","unlisted":false},{"type":"link","label":"9.18 Sql \u9ad8\u7ea7\u4ee3\u7406","href":"/docs/dbcontext-sql-proxy","docId":"dbcontext-sql-proxy","unlisted":false},{"type":"link","label":"9.19 \u591a\u79cd\u6570\u636e\u5e93\u64cd\u4f5c \u2728","href":"/docs/dbcontext-multi-database","docId":"dbcontext-multi-database","unlisted":false},{"type":"link","label":"9.20 \u6570\u636e\u5e93\u751f\u6210\u6a21\u578b (Db First)","href":"/docs/dbcontext-db-first","docId":"dbcontext-db-first","unlisted":false},{"type":"link","label":"9.21 \u6a21\u578b\u751f\u6210\u6570\u636e\u5e93 (Code First)","href":"/docs/dbcontext-code-first","docId":"dbcontext-code-first","unlisted":false},{"type":"link","label":"9.22 \u5b9e\u4f53\u79cd\u5b50\u6570\u636e","href":"/docs/dbcontext-seed-data","docId":"dbcontext-seed-data","unlisted":false},{"type":"link","label":"9.23 \u5ba1\u8ba1\u65e5\u5fd7 (Audit)","href":"/docs/dbcontext-audit","docId":"dbcontext-audit","unlisted":false},{"type":"link","label":"9.24 \u5b9e\u4f53/\u5168\u5c40\u67e5\u8be2\u7b5b\u9009\u5668","href":"/docs/dbcontext-filter","docId":"dbcontext-filter","unlisted":false},{"type":"link","label":"9.25 \u6570\u636e\u5e93\u64cd\u4f5c\u62e6\u622a\u5668","href":"/docs/dbcontext-Interceptor","docId":"dbcontext-Interceptor","unlisted":false},{"type":"link","label":"9.26 \u5b9e\u4f53\u6570\u636e\u76d1\u542c\u5668","href":"/docs/dbcontext-entitytrigger","docId":"dbcontext-entitytrigger","unlisted":false},{"type":"link","label":"9.27 \u4e8b\u52a1\u548c\u5de5\u4f5c\u5355\u5143 (UnitOfWork)","href":"/docs/tran","docId":"tran","unlisted":false},{"type":"link","label":"9.28 \u8bfb\u5199\u5206\u79bb/\u4e3b\u4ece\u590d\u5236","href":"/docs/dbcontext-read-write","docId":"dbcontext-read-write","unlisted":false},{"type":"link","label":"9.29 \u5206\u8868\u5206\u5e93","href":"/docs/split-db","docId":"split-db","unlisted":false},{"type":"link","label":"9.30 EFCore \u6700\u4f73\u5b9e\u8df5","href":"/docs/efcore-recommend","docId":"efcore-recommend","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/efcore"},{"type":"category","label":"10. SqlSugar \u6216\u5176\u4ed6 ORM","items":[{"type":"link","label":"10.1 SqlSugar \u96c6\u6210","href":"/docs/sqlsugar","docId":"sqlsugar","unlisted":false},{"type":"link","label":"10.2 Dapper \u96c6\u6210","href":"/docs/dapper","docId":"dapper","unlisted":false},{"type":"link","label":"10.3 MongoDB \u64cd\u4f5c","href":"/docs/mongodb","docId":"mongodb","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/orm"},{"type":"link","label":"11. SaaS \u591a\u79df\u6237","href":"/docs/saas","docId":"saas","unlisted":false},{"type":"link","label":"12. \u4f9d\u8d56\u6ce8\u5165/\u63a7\u5236\u53cd\u8f6c","href":"/docs/dependency-injection","docId":"dependency-injection","unlisted":false},{"type":"link","label":"13. \u5bf9\u8c61\u6570\u636e\u6620\u5c04 (Mapper)","href":"/docs/object-mapper","docId":"object-mapper","unlisted":false},{"type":"link","label":"14. \u5206\u5e03\u5f0f\u7f13\u5b58","href":"/docs/cache","docId":"cache","unlisted":false},{"type":"link","label":"15. \u5b89\u5168\u9274\u6743","href":"/docs/auth-control","docId":"auth-control","unlisted":false},{"type":"link","label":"16. CORS \u8de8\u57df","href":"/docs/cors","docId":"cors","unlisted":false},{"type":"link","label":"17. \u89c6\u56fe/\u6a21\u677f\u5f15\u64ce","href":"/docs/view-engine","docId":"view-engine","unlisted":false},{"type":"link","label":"18. \u65e5\u5fd7\u8bb0\u5f55","href":"/docs/logging","docId":"logging","unlisted":false},{"type":"link","label":"19. \u8fdc\u7a0b\u8bf7\u6c42 (HttpClient)","href":"/docs/http","docId":"http","unlisted":false},{"type":"link","label":"20. \u6570\u636e\u52a0\u89e3\u5bc6","href":"/docs/encryption","docId":"encryption","unlisted":false},{"type":"link","label":"21. \u5168\u7403\u5316\u548c\u672c\u5730\u5316\uff08\u591a\u8bed\u8a00\uff09","href":"/docs/local-language","docId":"local-language","unlisted":false},{"type":"link","label":"22. \u4e8b\u4ef6\u603b\u7ebf (EventBus)","href":"/docs/event-bus","docId":"event-bus","unlisted":false},{"type":"link","label":"23. JSON \u5e8f\u5217\u5316","href":"/docs/json-serialization","docId":"json-serialization","unlisted":false},{"type":"link","label":"24. \u5373\u65f6\u901a\u8baf","href":"/docs/signalr","docId":"signalr","unlisted":false},{"type":"link","label":"25. \u8f85\u52a9\u89d2\u8272\u670d\u52a1 (Worker Service)","href":"/docs/process-service","docId":"process-service","unlisted":false},{"type":"category","label":"26. \u5b9a\u65f6\u4efb\u52a1 (Schedule)","items":[{"type":"link","label":"26.1 \u8c03\u5ea6\u4f5c\u4e1a","href":"/docs/job","docId":"job","unlisted":false},{"type":"link","label":"26.2 Cron \u8868\u8fbe\u5f0f","href":"/docs/cron","docId":"cron","unlisted":false},{"type":"link","label":"26.3 \u4efb\u52a1\u961f\u5217","href":"/docs/task-queue","docId":"task-queue","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/job"},{"type":"link","label":"27. \u5206\u5e03\u5f0f ID \u751f\u6210","href":"/docs/idgenerator","docId":"idgenerator","unlisted":false},{"type":"link","label":"28. \u6a21\u5757\u5316\u5f00\u53d1","href":"/docs/module-dev","docId":"module-dev","unlisted":false},{"type":"link","label":"29. \u7c98\u571f\u5bf9\u8c61","href":"/docs/clayobj","docId":"clayobj","unlisted":false},{"type":"link","label":"30. \u8131\u654f\u5904\u7406","href":"/docs/sensitive-detection","docId":"sensitive-detection","unlisted":false},{"type":"link","label":"31. \u865a\u62df\u6587\u4ef6\u7cfb\u7edf\uff08\u4e0a\u4f20\u4e0b\u8f7d\uff09","href":"/docs/file-provider","docId":"file-provider","unlisted":false},{"type":"link","label":"32. \u4f1a\u8bdd\u548c\u72b6\u6001\u7ba1\u7406","href":"/docs/sesssion-state","docId":"sesssion-state","unlisted":false},{"type":"link","label":"33. IPC \u8fdb\u7a0b\u901a\u4fe1","href":"/docs/ipc","docId":"ipc","unlisted":false},{"type":"category","label":"34. \u6258\u7ba1/\u90e8\u7f72/\u53d1\u5e03","items":[{"type":"link","label":"34.1 \u5728 IIS \u90e8\u7f72","href":"/docs/deploy-iis","docId":"deploy-iis","unlisted":false},{"type":"link","label":"34.2 \u5728 Docker \u90e8\u7f72","href":"/docs/deploy-docker","docId":"deploy-docker","unlisted":false},{"type":"link","label":"34.3 \u5728 Nginx \u90e8\u7f72","href":"/docs/deploy-nginx","docId":"deploy-nginx","unlisted":false},{"type":"link","label":"34.4 \u4e8c\u7ea7\u865a\u62df\u76ee\u5f55\u90e8\u7f72","href":"/docs/virtual-deploy","docId":"virtual-deploy","unlisted":false},{"type":"link","label":"34.5. \u5355\u6587\u4ef6\u53d1\u5e03","href":"/docs/singlefile","docId":"singlefile","unlisted":false},{"type":"link","label":"34.6 pm2 \u90e8\u7f72","href":"/docs/pm2","docId":"pm2","unlisted":false},{"type":"link","label":"34.7 \u53d1\u5e03\u684c\u9762\u7a0b\u5e8f\uff08WinForm/WPF\uff09","href":"/docs/bs-to-cs","docId":"bs-to-cs","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/deploy"},{"type":"category","label":"35. \u6301\u7eed\u90e8\u7f72\u96c6\u6210","items":[{"type":"link","label":"35.1 Docker \u73af\u5883\u6301\u7eed\u90e8\u7f72","href":"/docs/deploy-docker-auto","docId":"deploy-docker-auto","unlisted":false},{"type":"link","label":"35.2 \u6301\u7eed\u90e8\u7f72\u96c6\u6210","href":"/docs/devops","docId":"devops","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/devops"},{"type":"category","label":"36. \u6d4b\u8bd5\u6307\u5357","items":[{"type":"link","label":"36.1 \u5355\u5143/\u96c6\u6210\u6d4b\u8bd5","href":"/docs/unittest","docId":"unittest","unlisted":false},{"type":"link","label":"36.2 \u8d1f\u8f7d\u538b\u6d4b","href":"/docs/performance","docId":"performance","unlisted":false},{"type":"link","label":"36.3 \u57fa\u51c6\u6d4b\u8bd5","href":"/docs/benchmark","docId":"benchmark","unlisted":false},{"type":"link","label":"36.4 \u5e76\u53d1\u6d4b\u8bd5","href":"/docs/bingfa","docId":"bingfa","unlisted":false}],"collapsed":true,"collapsible":true,"href":"/docs/category/test"},{"type":"link","label":"37. \u7f16\u5199\u5305\u7ba1\u7406\u5de5\u5177 (Tools)","href":"/docs/dotnet-tools","docId":"dotnet-tools","unlisted":false},{"type":"link","label":"38. \u8d21\u732e\u6307\u5357","href":"/docs/contribute","docId":"contribute","unlisted":false},{"type":"link","label":"39. \u5b89\u5168\u6f0f\u6d1e\u62a5\u544a","href":"/docs/bug-report","docId":"bug-report","unlisted":false}],"settings":[{"type":"link","label":"1. \u5e94\u7528\u914d\u7f6e","href":"/docs/settings/appsettings","docId":"settings/appsettings","unlisted":false},{"type":"link","label":"2. \u8de8\u57df\u914d\u7f6e","href":"/docs/settings/corsaccessorsettings","docId":"settings/corsaccessorsettings","unlisted":false},{"type":"link","label":"3. \u9a8c\u8bc1\u6d88\u606f\u914d\u7f6e","href":"/docs/settings/validationTypemessagesettings","docId":"settings/validationTypemessagesettings","unlisted":false},{"type":"link","label":"4. \u4f9d\u8d56\u6ce8\u5165\u914d\u7f6e","href":"/docs/settings/dependencyinjectionsettings","docId":"settings/dependencyinjectionsettings","unlisted":false},{"type":"link","label":"5. \u52a8\u6001API\u914d\u7f6e","href":"/docs/settings/dynamicapicontrollersettings","docId":"settings/dynamicapicontrollersettings","unlisted":false},{"type":"link","label":"6. \u53cb\u597d\u5f02\u5e38\u914d\u7f6e","href":"/docs/settings/friendlyexceptionsettings","docId":"settings/friendlyexceptionsettings","unlisted":false},{"type":"link","label":"7. \u89c4\u8303\u5316\u6587\u6863\u914d\u7f6e","href":"/docs/settings/specificationdocumentsettings","docId":"settings/specificationdocumentsettings","unlisted":false},{"type":"link","label":"8. \u591a\u8bed\u8a00\u914d\u7f6e","href":"/docs/settings/localizationsettings","docId":"settings/localizationsettings","unlisted":false},{"type":"link","label":"9. JWT \u914d\u7f6e","href":"/docs/settings/jwtsettings","docId":"settings/jwtsettings","unlisted":false},{"type":"link","label":"10. \u89c4\u8303\u5316\u7ed3\u679c\u914d\u7f6e","href":"/docs/settings/unifyresultsettings","docId":"settings/unifyresultsettings","unlisted":false}],"global":[{"type":"link","label":"1. App \u9759\u6001\u7c7b","href":"/docs/global/app","docId":"global/app","unlisted":false},{"type":"link","label":"2. Db \u9759\u6001\u7c7b","href":"/docs/global/db","docId":"global/db","unlisted":false},{"type":"link","label":"3. DataValidator \u9759\u6001\u7c7b","href":"/docs/global/datavalidator","docId":"global/datavalidator","unlisted":false},{"type":"link","label":"4. Oops \u9759\u6001\u7c7b","href":"/docs/global/oops","docId":"global/oops","unlisted":false},{"type":"link","label":"5. LinqExpression \u9759\u6001\u7c7b","href":"/docs/global/linqexpression","docId":"global/linqexpression","unlisted":false},{"type":"link","label":"6. Http \u9759\u6001\u7c7b","href":"/docs/global/shttp","docId":"global/shttp","unlisted":false},{"type":"link","label":"7. JsonSerializerUtility \u9759\u6001\u7c7b","href":"/docs/global/jsonserializer","docId":"global/jsonserializer","unlisted":false},{"type":"link","label":"8. L \u9759\u6001\u7c7b","href":"/docs/global/l","docId":"global/l","unlisted":false},{"type":"link","label":"9. MessageCenter \u9759\u6001\u7c7b","href":"/docs/global/messagecenter","docId":"global/messagecenter","unlisted":false},{"type":"link","label":"10. JSON \u9759\u6001\u7c7b","href":"/docs/global/json","docId":"global/json","unlisted":false},{"type":"link","label":"11. Scoped \u9759\u6001\u7c7b","href":"/docs/global/scoped","docId":"global/scoped","unlisted":false},{"type":"link","label":"12. SpareTime \u9759\u6001\u7c7b","href":"/docs/global/sparetime","docId":"global/sparetime","unlisted":false},{"type":"link","label":"13. FS \u9759\u6001\u7c7b","href":"/docs/global/fs","docId":"global/fs","unlisted":false},{"type":"link","label":"14. JWTEncryption \u9759\u6001\u7c7b","href":"/docs/global/jwt","docId":"global/jwt","unlisted":false},{"type":"link","label":"15. TP \u9759\u6001\u7c7b","href":"/docs/global/tp","docId":"global/tp","unlisted":false},{"type":"link","label":"16. Log \u9759\u6001\u7c7b","href":"/docs/global/log","docId":"global/log","unlisted":false},{"type":"link","label":"17. Schedular \u9759\u6001\u7c7b","href":"/docs/global/schedular","docId":"global/schedular","unlisted":false},{"type":"link","label":"18. TaskQueued \u9759\u6001\u7c7b","href":"/docs/global/taskqueued","docId":"global/taskqueued","unlisted":false},{"type":"link","label":"19. Native \u9759\u6001\u7c7b","href":"/docs/global/native","docId":"global/native","unlisted":false}]},"docs":{"appstartup":{"id":"appstartup","title":"3.1 AppStartup \u542f\u52a8","description":"\u5408\u7406\u7684\u914d\u7f6e\u6bcf\u4e00\u4e2a\u9879\u76ee\u5c42\u7684\u670d\u52a1\u4f9d\u8d56","sidebar":"docs"},"audit":{"id":"audit","title":"5.4 \u8bf7\u6c42\u5ba1\u8ba1\u65e5\u5fd7","description":"\u4efb\u4f55\u82cd\u8747\u90fd\u4e0d\u80fd\u653e\u8fc7","sidebar":"docs"},"auth-control":{"id":"auth-control","title":"15. \u5b89\u5168\u9274\u6743","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"author":{"id":"author","title":"1.2 \u5173\u4e8e\u4f5c\u8005","description":"\u7eb5\u4f60\u9605\u4eba\u4f55\u5176\u591a\uff0c\u518d\u65e0\u4e00\u4eba\u6070\u4f3c\u6211\u3002","sidebar":"docs"},"benchmark":{"id":"benchmark","title":"36.3 \u57fa\u51c6\u6d4b\u8bd5","description":"36.3.1 \u57fa\u51c6\u6d4b\u8bd5","sidebar":"docs"},"bingfa":{"id":"bingfa","title":"36.4 \u5e76\u53d1\u6d4b\u8bd5","description":"\u3010\u5e76\u53d1\u6d4b\u8bd5\u89c6\u9891\u6559\u7a0b\u3011","sidebar":"docs"},"bs-to-cs":{"id":"bs-to-cs","title":"34.7 \u53d1\u5e03\u684c\u9762\u7a0b\u5e8f\uff08WinForm/WPF\uff09","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 4.8.7.28 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"docs"},"bug-report":{"id":"bug-report","title":"39. \u5b89\u5168\u6f0f\u6d1e\u62a5\u544a","description":"\u62a5\u544a\u5b89\u5168\u6f0f\u6d1e\u7684\u65b9\u5f0f","sidebar":"docs"},"cache":{"id":"cache","title":"14. \u5206\u5e03\u5f0f\u7f13\u5b58","description":"14.1 \u4ec0\u4e48\u662f\u7f13\u5b58","sidebar":"docs"},"case":{"id":"case","title":"1.4 \u5f00\u6e90\u6848\u4f8b","description":"\u8fd9\u91cc\u6709\u4f18\u79c0\u7684\u5f00\u6e90\u6848\u4f8b\uff0c\u975e\u5e38\u671f\u5f85\u60a8\u7684\u5f00\u6e90","sidebar":"docs"},"clayobj":{"id":"clayobj","title":"29. \u7c98\u571f\u5bf9\u8c61","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"clientapi":{"id":"clientapi","title":"5.6 Vue/React/Angular \u63a5\u53e3\u4ee3\u7406","description":"\u539f\u6765 Ajax \u4e5f\u53ef\u4ee5\u4e0d\u7528\u5199\u7684","sidebar":"docs"},"component":{"id":"component","title":"3.2 \u7ec4\u4ef6\u5316\u542f\u52a8","description":"\u7ec4\u4ef6\u5316\u914d\u7f6e\u4f9d\u8d56\u670d\u52a1\u6216\u8bb8\u662f\u6700\u4f73\u5b9e\u8df5","sidebar":"docs"},"configuration":{"id":"configuration","title":"4.1 \u914d\u7f6e","description":"\u7ea6\u5b9a\u5927\u4e8e\u914d\u7f6e\uff0c\u914d\u7f6e\u5927\u4e8e\u786c\u7f16\u7801","sidebar":"docs"},"contribute":{"id":"contribute","title":"38. \u8d21\u732e\u6307\u5357","description":"38.1 \u63d0\u4ea4\u9519\u8bef\u62a5\u544a","sidebar":"docs"},"cors":{"id":"cors","title":"16. CORS \u8de8\u57df","description":"16.1 \u4ec0\u4e48\u662f\u8de8\u57df","sidebar":"docs"},"course":{"id":"course","title":"1.7 \u53d1\u5c55\u5927\u4e8b\u8bb0","description":"2020 \u5e74 09 \u6708 01 \u65e5\uff0cFur \u6b63\u5f0f\u5199\u4e0b\u7b2c\u4e00\u884c\u4ee3\u7801\u3002","sidebar":"docs"},"cron":{"id":"cron","title":"26.2 Cron \u8868\u8fbe\u5f0f","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dapper":{"id":"dapper","title":"10.2 Dapper \u96c6\u6210","description":"\u5728 Furion \u5305\u4e2d\u9ed8\u8ba4\u96c6\u6210\u4e86 EFCore\uff0c\u5982\u679c\u4e0d\u4f7f\u7528 EFCore\uff0c\u53ef\u5b89\u88c5\u7eaf\u51c0\u7248 Furion.Pure \u4ee3\u66ff Furion\u3002","sidebar":"docs"},"data-validation":{"id":"data-validation","title":"8. \u6570\u636e\u6821\u9a8c","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext":{"id":"dbcontext","title":"9.2 \u6570\u636e\u5e93\u4e0a\u4e0b\u6587","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-add":{"id":"dbcontext-add","title":"9.6 \u65b0\u589e\u64cd\u4f5c","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-add-or-update":{"id":"dbcontext-add-or-update","title":"9.8 \u65b0\u589e\u6216\u66f4\u65b0\u64cd\u4f5c","description":"\u4ee5\u4e0b\u5185\u5bb9\u5728 Furion 2.5.1 + \u7248\u672c\u4e2d\u5df2\u79fb\u9664\u3002\u6b64\u64cd\u4f5c\u8ba9\u5f88\u591a\u4e0d\u4e86\u89e3 EFCore \u7684\u5f00\u53d1\u8005\u4ea7\u751f\u4e86\u5f88\u5927\u7684\u8bef\u89e3\uff0c\u4e0d\u77e5\u4f55\u65f6\u65b0\u589e\u6216\u4f55\u65f6\u66f4\u65b0\uff0c\u6545\u79fb\u9664\u6b64\u529f\u80fd\u3002","sidebar":"docs"},"dbcontext-audit":{"id":"dbcontext-audit","title":"9.23 \u5ba1\u8ba1\u65e5\u5fd7","description":"9.23.1 \u5ba1\u8ba1\u65e5\u5fd7","sidebar":"docs"},"dbcontext-batch":{"id":"dbcontext-batch","title":"9.10 \u6279\u91cf\u64cd\u4f5c","description":"9.10.1 \u5173\u4e8e\u6279\u91cf\u64cd\u4f5c","sidebar":"docs"},"dbcontext-code-first":{"id":"dbcontext-code-first","title":"9.21 \u6a21\u578b\u751f\u6210\u6570\u636e\u5e93","description":"Fur.Web.Entry \u5c42\u9700\u8981\u5b89\u88c5 Microsoft.EntityFrameworkCore.Tools \u5305\u3002","sidebar":"docs"},"dbcontext-db-first":{"id":"dbcontext-db-first","title":"9.20 \u6570\u636e\u5e93\u751f\u6210\u6a21\u578b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-delete":{"id":"dbcontext-delete","title":"9.9 \u5220\u9664\u64cd\u4f5c","description":"\u4ee5\u4e0b\u5185\u5bb9\u5305\u542b Exists \u5355\u8bcd\u7684\u5728 Furion 2.6.0 + \u7248\u672c\u4e2d\u5df2\u79fb\u9664\u3002","sidebar":"docs"},"dbcontext-entitytrigger":{"id":"dbcontext-entitytrigger","title":"9.26 \u5b9e\u4f53\u6570\u636e\u76d1\u542c\u5668","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-filter":{"id":"dbcontext-filter","title":"9.24 \u5b9e\u4f53/\u5168\u5c40\u67e5\u8be2\u7b5b\u9009\u5668","description":"9.24.1 \u67e5\u8be2\u7b5b\u9009\u5668","sidebar":"docs"},"dbcontext-function":{"id":"dbcontext-function","title":"9.15 \u51fd\u6570\u64cd\u4f5c","description":"\u63a8\u8350\u4f7f\u7528 \u300a9.18 Sql \u9ad8\u7ea7\u4ee3\u7406\u300b\u4ee3\u66ff\u672c\u7ae0\u8282\u529f\u80fd\u3002Sql \u9ad8\u7ea7\u4ee3\u7406 \u80fd\u591f\u63d0\u4f9b\u66f4\u5bb9\u6613\u4e14\u66f4\u6613\u7ef4\u62a4\u7684\u65b9\u5f0f\u3002","sidebar":"docs"},"dbcontext-hight-query":{"id":"dbcontext-hight-query","title":"9.12 \u9ad8\u7ea7\u67e5\u8be2\u64cd\u4f5c","description":"9.12.1 \u5173\u8054\u6570\u636e\u6a21\u578b","sidebar":"docs"},"dbcontext-Interceptor":{"id":"dbcontext-Interceptor","title":"9.25 \u6570\u636e\u5e93\u64cd\u4f5c\u62e6\u622a\u5668","description":"9.25.1 \u6570\u636e\u5e93\u62e6\u622a\u5668","sidebar":"docs"},"dbcontext-locator":{"id":"dbcontext-locator","title":"9.3 \u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u5b9a\u4f4d\u5668","description":"\u53ea\u8981\u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u6ce8\u518c\u7ed1\u5b9a\u4e86\u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u5b9a\u4f4d\u5668\uff0c\u90a3\u4e48\u6240\u6709\u7684\u4ed3\u50a8\u3001\u5b9e\u4f53\u3001\u79cd\u5b50\u3001\u914d\u7f6e\u3001\u89c6\u56fe\u3001\u51fd\u6570\u7b49\u6570\u636e\u5e93\u76f8\u5173\u7684\u7c7b\u3001\u63a5\u53e3\u3001\u65b9\u6cd5\u90fd\u9700\u8981\u6307\u5b9a\u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u5b9a\u4f4d\u5668\uff0c\u9ed8\u8ba4\u6570\u636e\u5e93\u4e0a\u4e0b\u6587\u5b9a\u4f4d\u5668\u9664\u5916\u3002","sidebar":"docs"},"dbcontext-multi-database":{"id":"dbcontext-multi-database","title":"9.19 \u591a\u79cd\u6570\u636e\u5e93\u64cd\u4f5c","description":"\u5982\u679c\u8fde\u63a5\u5b57\u7b26\u4e32\u662f\u914d\u7f6e\u5728\u81ea\u5b9a\u4e49\u7684 .json \u6587\u4ef6\u4e2d\uff0c\u90a3\u4e48\u5fc5\u987b\u5728 Visual Studio \u4e2d\u914d\u7f6e .json \u53f3\u952e\u5c5e\u6027\uff0c\u8bbe\u7f6e \u590d\u5236 \u8f93\u51fa\u76ee\u5f55\u4e3a \u5982\u679c\u8f83\u65b0\u5219\u590d\u5236\uff0c\u751f\u6210\u64cd\u4f5c\u4e3a \u5185\u5bb9\u3002","sidebar":"docs"},"dbcontext-proc":{"id":"dbcontext-proc","title":"9.14 \u5b58\u50a8\u8fc7\u7a0b\u64cd\u4f5c","description":"\u63a8\u8350\u4f7f\u7528 \u300a9.18 Sql \u9ad8\u7ea7\u4ee3\u7406\u300b\u4ee3\u66ff\u672c\u7ae0\u8282\u529f\u80fd\u3002Sql \u9ad8\u7ea7\u4ee3\u7406 \u80fd\u591f\u63d0\u4f9b\u66f4\u5bb9\u6613\u4e14\u66f4\u6613\u7ef4\u62a4\u7684\u65b9\u5f0f\u3002","sidebar":"docs"},"dbcontext-query":{"id":"dbcontext-query","title":"9.11 \u67e5\u8be2\u64cd\u4f5c","description":"9.11.1 \u6839\u636e\u4e3b\u952e\u67e5\u8be2\u4e00\u6761","sidebar":"docs"},"dbcontext-read-write":{"id":"dbcontext-read-write","title":"9.28 \u8bfb\u5199\u5206\u79bb/\u4e3b\u4ece\u590d\u5236","description":"9.28.1 \u8bfb\u5199\u5206\u79bb","sidebar":"docs"},"dbcontext-repository":{"id":"dbcontext-repository","title":"9.5 \u4ed3\u50a8\u6a21\u5f0f","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-seed-data":{"id":"dbcontext-seed-data","title":"9.22 \u5b9e\u4f53\u79cd\u5b50\u6570\u636e","description":"\u4e00\u65e6\u5b9a\u4e49\u4e86\u79cd\u5b50\u6570\u636e\u6216\u6539\u53d8\u4e86\u79cd\u5b50\u6570\u636e\uff0c\u9700\u8981\u91cd\u65b0\u6267\u884c Add-Migration \u548c Update-Database \u547d\u4ee4\u3002","sidebar":"docs"},"dbcontext-sql":{"id":"dbcontext-sql","title":"9.16 Sql \u64cd\u4f5c","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-sql-proxy":{"id":"dbcontext-sql-proxy","title":"9.18 Sql \u9ad8\u7ea7\u4ee3\u7406","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"dbcontext-sql-template":{"id":"dbcontext-sql-template","title":"9.17 Sql \u6a21\u677f","description":"9.17.1 Sql \u6a21\u677f","sidebar":"docs"},"dbcontext-start":{"id":"dbcontext-start","title":"9.1 \u5165\u95e8\u7b80\u8981","description":"9.1.1 \u5165\u95e8\u51c6\u5907","sidebar":"docs"},"dbcontext-update":{"id":"dbcontext-update","title":"9.7 \u66f4\u65b0\u64cd\u4f5c","description":"\u4ee5\u4e0b\u5185\u5bb9\u5305\u542b Exists \u5355\u8bcd\u7684\u5728 Furion 2.6.0 + \u7248\u672c\u4e2d\u5df2\u79fb\u9664\u3002","sidebar":"docs"},"dbcontext-view":{"id":"dbcontext-view","title":"9.13 \u89c6\u56fe\u64cd\u4f5c","description":"9.13.1 \u5173\u4e8e\u89c6\u56fe","sidebar":"docs"},"dependency-injection":{"id":"dependency-injection","title":"12. \u4f9d\u8d56\u6ce8\u5165/\u63a7\u5236\u53cd\u8f6c","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"deploy-docker":{"id":"deploy-docker","title":"34.2 \u5728 Docker \u90e8\u7f72","description":"\u5982\u679c\u9700\u8981\u7cbe\u7b80\u53d1\u5e03\u540e\u7684\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f\u5220\u9664\u4e0d\u5fc5\u8981\u7684\u6587\u4ef6\u5939\uff0c\u53ef\u4ee5\u7f16\u8f91 Web \u9879\u76ee\u7684 .csproj \u5e76\u6dfb\u52a0 en-US\uff0c\u5982\uff1a","sidebar":"docs"},"deploy-docker-auto":{"id":"deploy-docker-auto","title":"35.1 Docker \u73af\u5883\u6301\u7eed\u90e8\u7f72","description":"35.1.1 \u5173\u4e8e\u5168 Docker \u73af\u5883\u90e8\u7f72","sidebar":"docs"},"deploy-iis":{"id":"deploy-iis","title":"34.1 \u5728 IIS \u90e8\u7f72","description":"\u5982\u679c\u9700\u8981\u7cbe\u7b80\u53d1\u5e03\u540e\u7684\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f\u5220\u9664\u4e0d\u5fc5\u8981\u7684\u6587\u4ef6\u5939\uff0c\u53ef\u4ee5\u7f16\u8f91 Web \u9879\u76ee\u7684 .csproj \u5e76\u6dfb\u52a0 en-US\uff0c\u5982\uff1a","sidebar":"docs"},"deploy-nginx":{"id":"deploy-nginx","title":"34.3 \u5728 Nginx \u90e8\u7f72","description":"\u6587\u6863\u7d27\u6025\u7f16\u5199\u4e2d\uff0c\u53ef\u4ee5\u67e5\u770b\u5b98\u65b9\u6587\u6863 https://docs.microsoft.com/zh-cn/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-5.0","sidebar":"docs"},"devops":{"id":"devops","title":"35.2 \u6301\u7eed\u90e8\u7f72\u96c6\u6210","description":"\u6587\u6863\u7d27\u6025\u7f16\u5199\u4e2d\uff0c\u53ef\u4ee5\u5148\u770b\u65e7\u6587\u6863","sidebar":"docs"},"donate":{"id":"donate","title":"1.5 \u652f\u6301 Furion","description":"Furion \u662f\u91c7\u7528 MIT \u8bb8\u53ef\u7684\u5f00\u6e90\u9879\u76ee","sidebar":"docs"},"dotnet-tools":{"id":"dotnet-tools","title":"37. \u7f16\u5199\u5305\u7ba1\u7406\u5de5\u5177","description":"37.1 \u5173\u4e8e\u5305\u7ba1\u7406\u5de5\u5177","sidebar":"docs"},"dynamic-api-controller":{"id":"dynamic-api-controller","title":"5.1 \u52a8\u6001 WebAPI","description":"\u4e0d\u60f3\u624b\u52a8\u914d\u7f6e\u8def\u7531\u4e86\uff0c\u8bd5\u8bd5\u5b83","sidebar":"docs"},"efcore-recommend":{"id":"efcore-recommend","title":"9.30 EFCore \u6700\u4f73\u5b9e\u8df5","description":"9.30.1 EFCore \u9ad8\u6027\u80fd","sidebar":"docs"},"encryption":{"id":"encryption","title":"20. \u6570\u636e\u52a0\u89e3\u5bc6","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"entity":{"id":"entity","title":"9.4 \u6570\u636e\u5e93\u5b9e\u4f53","description":"\u4e00\u65e6\u5b9a\u4e49\u4e86\u5b9e\u4f53\u6216\u6539\u53d8\u4e86\u5b9e\u4f53\u7ed3\u6784\u6216\u5b9e\u4f53\u914d\u7f6e\uff0c\u9700\u8981\u91cd\u65b0\u6267\u884c Add-Migration \u548c Update-Database \u547d\u4ee4\u3002","sidebar":"docs"},"event-bus":{"id":"event-bus","title":"22. \u4e8b\u4ef6\u603b\u7ebf","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"event-bus-old":{"id":"event-bus-old","title":"22. \u4e8b\u4ef6\u603b\u7ebf","description":"\u5728 Furion v2.20+ \u7248\u672c\u91c7\u7528 Jaina \u4e8b\u4ef6\u603b\u7ebf\u66ff\u6362\u539f\u6709\u7684 EventBus\uff0c\ud83d\ude36\u67e5\u770b\u65b0\u6587\u6863"},"file-provider":{"id":"file-provider","title":"31. \u865a\u62df\u6587\u4ef6\u7cfb\u7edf","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"filter":{"id":"filter","title":"5.3 \u7b5b\u9009\u5668/\u62e6\u622a\u5668/\u8fc7\u6ee4\u5668/AOP","description":"\u9762\u5411\u5207\u9762\u7f16\u7a0b\u53ef\u4ee5\u6700\u4f4e\u6210\u672c\u89e3\u51b3\u5168\u5c40\u95ee\u9898","sidebar":"docs"},"friendly-exception":{"id":"friendly-exception","title":"7. \u53cb\u597d\u5f02\u5e38\u5904\u7406","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"get-start-net5":{"id":"get-start-net5","title":"2.2 ASP.NET 5 \u96c6\u6210","description":"\u5b66\u4e60\u5982\u4f55\u5728 ASP.NET 5 \u4e2d\u96c6\u6210 Furion","sidebar":"docs"},"get-start-net6":{"id":"get-start-net6","title":"2.3 ASP.NET 6 \u96c6\u6210","description":"\u5b66\u4e60\u5982\u4f55\u5728 ASP.NET 6 \u4e2d\u96c6\u6210 Furion","sidebar":"docs"},"get-start-net7":{"id":"get-start-net7","title":"2.4 ASP.NET 7 \u96c6\u6210","description":"\u5b66\u4e60\u5982\u4f55\u5728 ASP.NET 7 \u4e2d\u96c6\u6210 Furion","sidebar":"docs"},"get-start-net8":{"id":"get-start-net8","title":"2.5 ASP.NET 8 \u96c6\u6210","description":"\u5b66\u4e60\u5982\u4f55\u5728 ASP.NET 8 \u4e2d\u96c6\u6210 Furion","sidebar":"docs"},"global/app":{"id":"global/app","title":"1. App \u9759\u6001\u7c7b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"global"},"global/datavalidator":{"id":"global/datavalidator","title":"3. DataValidator \u9759\u6001\u7c7b","description":"3.1 \u9a8c\u8bc1\u5bf9\u8c61\u6570\u636e","sidebar":"global"},"global/db":{"id":"global/db","title":"2. Db \u9759\u6001\u7c7b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"global"},"global/fs":{"id":"global/fs","title":"13. FS \u9759\u6001\u7c7b","description":"13.1 \u83b7\u53d6\u7269\u7406\u6587\u4ef6\u63d0\u4f9b\u5668","sidebar":"global"},"global/json":{"id":"global/json","title":"10. JSON \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 1.16.0 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"global"},"global/jsonserializer":{"id":"global/jsonserializer","title":"7. JsonSerializerUtility \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u5728 Furion 1.16.0 + \u7248\u672c\u4e2d\u5df2\u79fb\u9664\u3002\u8bf7\u4f7f\u7528 \u301023. JSON \u5e8f\u5217\u5316\u7ae0\u8282\u3011","sidebar":"global"},"global/jwt":{"id":"global/jwt","title":"14. JWTEncryption \u9759\u6001\u7c7b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"global"},"global/l":{"id":"global/l","title":"8. L \u9759\u6001\u7c7b","description":"8.1 \u8f6c\u6362\u6587\u672c\u591a\u8bed\u8a00","sidebar":"global"},"global/linqexpression":{"id":"global/linqexpression","title":"5. LinqExpression \u9759\u6001\u7c7b","description":"5.1 \u521b\u5efa\u4e00\u4e2a\u8868\u8fbe\u5f0f","sidebar":"global"},"global/log":{"id":"global/log","title":"16. Log \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 4.2.1 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"global"},"global/messagecenter":{"id":"global/messagecenter","title":"9. MessageCenter \u9759\u6001\u7c7b","description":"9.1 \u52a8\u6001\u8ba2\u9605\u6d88\u606f","sidebar":"global"},"global/native":{"id":"global/native","title":"19. Native \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 4.8.7.23 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"global"},"global/oops":{"id":"global/oops","title":"4. Oops \u9759\u6001\u7c7b","description":"4.1 \u629b\u51fa\u5b57\u7b26\u4e32\u5f02\u5e38","sidebar":"global"},"global/schedular":{"id":"global/schedular","title":"17. Schedular \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 4.8.0 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"global"},"global/scoped":{"id":"global/scoped","title":"11. Scoped \u9759\u6001\u7c7b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"global"},"global/shttp":{"id":"global/shttp","title":"6. Http \u9759\u6001\u7c7b","description":"6.1 \u83b7\u53d6\u8fdc\u7a0b\u4ee3\u7406\u670d\u52a1","sidebar":"global"},"global/sparetime":{"id":"global/sparetime","title":"12. SpareTime \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u5728 Furion 4.8.4 + \u7248\u672c\u4e2d\u5df2\u79fb\u9664\u3002","sidebar":"global"},"global/taskqueued":{"id":"global/taskqueued","title":"18. TaskQueued \u9759\u6001\u7c7b","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 4.8.3 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"global"},"global/tp":{"id":"global/tp","title":"15. TP \u9759\u6001\u7c7b","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"global"},"globalusing":{"id":"globalusing","title":"2.12 GlobalUsing \u4f7f\u7528","description":"\u5b66\u4e60\u5982\u4f55\u907f\u514d\u4ee3\u7801\u5934\u90e8\u5927\u91cf Using","sidebar":"docs"},"http":{"id":"http","title":"19. \u8fdc\u7a0b\u8bf7\u6c42","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"httpcontext":{"id":"httpcontext","title":"5.2 HttpContext","description":"\u548c\u5ba2\u6237\u7aef\u4ea4\u4e92\uff0c\u6ca1\u5b83\u771f\u4e0d\u884c","sidebar":"docs"},"idgenerator":{"id":"idgenerator","title":"27. \u5206\u5e03\u5f0f ID \u751f\u6210","description":"27.1 \u4e3a\u4ec0\u4e48\u9700\u8981\u5206\u5e03\u5f0f ID","sidebar":"docs"},"inject":{"id":"inject","title":"2.8 \u795e\u5947\u7684 Inject","description":"\u4e00\u53e5\u8bdd\u96c6\u6210 Furion","sidebar":"docs"},"introduce":{"id":"introduce","title":"1.1 \u4ecb\u7ecd","description":"\u8ba9 .NET \u5f00\u53d1\u66f4\u7b80\u5355\uff0c\u66f4\u901a\u7528\uff0c\u66f4\u6d41\u884c\u3002","sidebar":"docs"},"ipc":{"id":"ipc","title":"33. IPC \u8fdb\u7a0b\u901a\u4fe1","description":"33.1 \u4ec0\u4e48\u662f IPC","sidebar":"docs"},"job":{"id":"job","title":"26.1 \u8c03\u5ea6\u4f5c\u4e1a","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"job-old":{"id":"job-old","title":"26. \u5b9a\u65f6\u4efb\u52a1/\u540e\u53f0\u4efb\u52a1","description":"\u5728 Furion 4.8.0+ \u7248\u672c\u91c7\u7528 Sundial \u5b9a\u65f6\u4efb\u52a1\u66ff\u6362\u539f\u6709\u7684 TaskScheduler\uff0c\ud83d\ude36\u67e5\u770b\u65b0\u6587\u6863"},"json-serialization":{"id":"json-serialization","title":"23. JSON \u5e8f\u5217\u5316","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"jsonschema":{"id":"jsonschema","title":"2.13 JSON Schema \u4f7f\u7528","description":"\u914d\u7f6e\u6587\u4ef6\u4e5f\u8981\u667a\u80fd\u63d0\u793a","sidebar":"docs"},"local-language":{"id":"local-language","title":"21. \u5168\u7403\u5316\u548c\u672c\u5730\u5316","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"logging":{"id":"logging","title":"18. \u65e5\u5fd7\u8bb0\u5f55","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"middleware":{"id":"middleware","title":"5.5 \u4e2d\u95f4\u4ef6 (Middleware)","description":"\u76d1\u542c\u6216\u63a7\u5236\u8bf7\u6c42\u548c\u54cd\u5e94\u5c31\u7528\u5b83","sidebar":"docs"},"module-dev":{"id":"module-dev","title":"28. \u6a21\u5757\u5316\u5f00\u53d1","description":"\u4ee5\u4e0b\u7684\u6a21\u5757\u5316\u914d\u7f6e\u5fc5\u987b\u5728 appsettings.json \u4e0b\u914d\u7f6e\u624d\u6709\u6548\uff0c\u539f\u56e0\u662f\u542f\u52a8\u7684\u65f6\u5019 appsettings.json \u5df2\u7ecf\u52a0\u8f7d\uff0c\u81ea\u5b9a\u4e49\u914d\u7f6e\u6587\u4ef6\u8fd8\u672a\u52a0\u8f7d\u3002","sidebar":"docs"},"mongodb":{"id":"mongodb","title":"10.3 MongoDB \u64cd\u4f5c","description":"\u5728 Furion \u5305\u4e2d\u9ed8\u8ba4\u96c6\u6210\u4e86 EFCore\uff0c\u5982\u679c\u4e0d\u4f7f\u7528 EFCore\uff0c\u53ef\u5b89\u88c5\u7eaf\u51c0\u7248 Furion.Pure \u4ee3\u66ff Furion\u3002","sidebar":"docs"},"net5-to-net6":{"id":"net5-to-net6","title":"2.9 .NET5 \u5347\u7ea7 .NET6","description":"\u4e86\u89e3\u5982\u4f55\u4ece .NET5 \u5347\u7ea7\u5230 .NET6","sidebar":"docs"},"net6-to-net7":{"id":"net6-to-net7","title":"2.10 .NET6 \u5347\u7ea7 .NET7","description":"\u4e86\u89e3\u5982\u4f55\u4ece .NET6 \u5347\u7ea7\u5230 .NET7","sidebar":"docs"},"net7-to-net8":{"id":"net7-to-net8","title":"2.11 .NET7 \u5347\u7ea7 .NET8","description":"\u4e86\u89e3\u5982\u4f55\u4ece .NET7 \u5347\u7ea7\u5230 .NET8","sidebar":"docs"},"nuget-local":{"id":"nuget-local","title":"2.15 NuGet \u672c\u5730\u8c03\u8bd5\u5305","description":"\u5982\u4f55\u4f7f\u7528 NuGet \u672c\u5730\u8c03\u8bd5\u5305","sidebar":"docs"},"object-mapper":{"id":"object-mapper","title":"13. \u5bf9\u8c61\u6570\u636e\u6620\u5c04","description":"Furion \u6846\u67b6\u63d0\u4f9b\u4e86 Mapster \u7684\u62d3\u5c55 Furion.Extras.ObjectMapper.Mapster\uff0c\u5982\u9700\u4f7f\u7528\u7b2c\u4e09\u65b9\u5982 AutoMapper \u5219\u65e0\u9700\u5b89\u88c5\u6b64\u62d3\u5c55\u3002","sidebar":"docs"},"options":{"id":"options","title":"4.2 \u9009\u9879","description":"\u914d\u7f6e\u4e5f\u53ef\u4ee5\u8fdb\u884c OOP \u64cd\u4f5c","sidebar":"docs"},"performance":{"id":"performance","title":"36.2 \u8d1f\u8f7d\u538b\u6d4b","description":"\u3010\u8d1f\u8f7d\u538b\u6d4b\u89c6\u9891\u6559\u7a0b\u3011","sidebar":"docs"},"pm2":{"id":"pm2","title":"34.6 pm2 \u90e8\u7f72","description":"34.6.1 \u5173\u4e8e pm2","sidebar":"docs"},"position":{"id":"position","title":"1.9 \u6846\u67b6\u5b9a\u4f4d","description":"\u7528\u6237\u8feb\u5207\u9700\u8981\u4ec0\u4e48\uff0c\u90a3\u4e48\u6211\u4eec\u5c31\u63a8\u4ec0\u4e48","sidebar":"docs"},"process-service":{"id":"process-service","title":"25. \u8f85\u52a9\u89d2\u8272\u670d\u52a1","description":"25.1 \u5173\u4e8e\u8f85\u52a9\u89d2\u8272\u670d\u52a1","sidebar":"docs"},"reference":{"id":"reference","title":"2.7 \u624b\u52a8\u642d\u5efa\u5206\u5c42","description":"\u5b8c\u5168\u81ea\u5b9a\u4e49\u9879\u76ee\u5206\u5c42\u7ed3\u6784","sidebar":"docs"},"saas":{"id":"saas","title":"11. SaaS \u591a\u79df\u6237","description":"11.1 \u4ec0\u4e48\u662f SaaS","sidebar":"docs"},"sensitive-detection":{"id":"sensitive-detection","title":"30. \u8131\u654f\u5904\u7406","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"serverun":{"id":"serverun","title":"2.1 \u5165\u95e8\u6307\u5357","description":"\u5b66\u4e60 Furion \u5982\u4f55\u5feb\u901f\u5165\u95e8","sidebar":"docs"},"sesssion-state":{"id":"sesssion-state","title":"32. \u4f1a\u8bdd\u548c\u72b6\u6001\u7ba1\u7406","description":"32.1 \u5173\u4e8e\u4f1a\u8bdd\u548c\u72b6\u6001\u7ba1\u7406","sidebar":"docs"},"settings/appsettings":{"id":"settings/appsettings","title":"1. \u5e94\u7528\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/corsaccessorsettings":{"id":"settings/corsaccessorsettings","title":"2. \u8de8\u57df\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/dependencyinjectionsettings":{"id":"settings/dependencyinjectionsettings","title":"4. \u4f9d\u8d56\u6ce8\u5165\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/dynamicapicontrollersettings":{"id":"settings/dynamicapicontrollersettings","title":"5. \u52a8\u6001API\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/friendlyexceptionsettings":{"id":"settings/friendlyexceptionsettings","title":"6. \u53cb\u597d\u5f02\u5e38\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/jwtsettings":{"id":"settings/jwtsettings","title":"9. JWT \u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/localizationsettings":{"id":"settings/localizationsettings","title":"8. \u591a\u8bed\u8a00\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/specificationdocumentsettings":{"id":"settings/specificationdocumentsettings","title":"7. \u89c4\u8303\u5316\u6587\u6863\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/unifyresultsettings":{"id":"settings/unifyresultsettings","title":"10. \u89c4\u8303\u5316\u7ed3\u679c\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"settings/validationTypemessagesettings":{"id":"settings/validationTypemessagesettings","title":"3. \u9a8c\u8bc1\u6d88\u606f\u914d\u7f6e","description":"\u5982\u9700\u7f16\u5199\u914d\u7f6e\u7684\u65f6\u5019\u63d0\u4f9b\u667a\u80fd\u63d0\u793a\u548c\u6821\u9a8c\uff0c\u53ef\u67e5\u770b \u30102.7 JSON Schema \u4f7f\u7528\u3011","sidebar":"settings"},"signalr":{"id":"signalr","title":"24. \u5373\u65f6\u901a\u8baf","description":"24.1 \u4ec0\u4e48\u662f\u5373\u65f6\u901a\u8baf","sidebar":"docs"},"singlefile":{"id":"singlefile","title":"34.5. \u5355\u6587\u4ef6\u53d1\u5e03","description":"\u4ee5\u4e0b\u5185\u5bb9\u4ec5\u9650 Furion 3.5.2 + \u7248\u672c\u4f7f\u7528\u3002","sidebar":"docs"},"source":{"id":"source","title":"1.3 \u793a\u4f8b\u67b6\u6784\u8bf4\u660e","description":"\u4e86\u89e3 Furion \u793a\u4f8b\u4ee3\u7801\u67b6\u6784\u8bf4\u660e","sidebar":"docs"},"specification-document":{"id":"specification-document","title":"6. \u89c4\u8303\u5316\u63a5\u53e3\u6587\u6863","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"split-db":{"id":"split-db","title":"9.29 \u5206\u8868\u5206\u5e93","description":"\u672c\u7ae0 9.28.2 \u81f3 9.28.5 \u5c0f\u8282\u632a\u7528\u535a\u4e3b\uff1a\u96e8\u70b9\u7684\u540d\u5b57 \u7684 \u5206\u5e93\u5206\u8868 - \u7406\u8bba \u535a\u5ba2\u5185\u5bb9\u3002\u7279\u6b64\u58f0\u660e\u3002","sidebar":"docs"},"sqlsugar":{"id":"sqlsugar","title":"10.1 SqlSugar \u96c6\u6210","description":"\u7531\u4e8e SqlSugar \u9ad8\u901f\u53d1\u5c55\uff0c\u65b0\u7248\u672c\u5e26\u6765\u4e86\u8bf8\u591a\u7279\u6027\uff0c\u800c Furion.Extras.DatabaseAccessor.SqlSugar \u62d3\u5c55\u5305\u66f4\u65b0\u4e0d\u53ca\u65f6\u5bfc\u81f4\u4e0d\u80fd\u7b2c\u4e00\u65f6\u95f4\u4f53\u9a8c\u65b0\u7279\u6027\u3002","sidebar":"docs"},"sqlsugar-old":{"id":"sqlsugar-old","title":"10.1. SqlSugar \u96c6\u6210","description":"\u5728 Furion \u5305\u4e2d\u9ed8\u8ba4\u96c6\u6210\u4e86 EFCore\uff0c\u5982\u679c\u4e0d\u4f7f\u7528 EFCore\uff0c\u53ef\u5b89\u88c5\u7eaf\u51c0\u7248 Furion.Pure \u4ee3\u66ff Furion\uff0c\u8fd9\u6837\u53ef\u4ee5\u5ffd\u7565\u672c\u7ae0\u8282\u76f4\u63a5\u6309\u7167 SqlSugar \u5b98\u65b9\u6587\u6863\u4f7f\u7528\u3002"},"subscribe":{"id":"subscribe","title":"1.11 VIP \u670d\u52a1","description":"\u5f00\u901a VIP \u670d\u52a1\u4ec5\u9700 499 \u5143/\u5e74\uff0c\u5c0a\u4eab 365 \u5929\u9879\u76ee\u65e0\u5fe7","sidebar":"docs"},"target":{"id":"target","title":"1.8 \u8def\u7ebf\u56fe","description":"\u4e86\u89e3 Furion \u91cd\u6784\u7248\u672c\u7684\u72b6\u6001\u548c\u6f14\u53d8","sidebar":"docs"},"task-queue":{"id":"task-queue","title":"26.3 \u4efb\u52a1\u961f\u5217","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"template":{"id":"template","title":"2.6 \u5b98\u65b9\u811a\u624b\u67b6","description":"\u5feb\u901f\u521b\u5efa\u751f\u4ea7\u7ea7\u9879\u76ee\u89e3\u51b3\u65b9\u6848","sidebar":"docs"},"tran":{"id":"tran","title":"9.27 \u4e8b\u52a1\u548c\u5de5\u4f5c\u5355\u5143","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"unittest":{"id":"unittest","title":"36.1 \u5355\u5143/\u96c6\u6210\u6d4b\u8bd5","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"upgrade":{"id":"upgrade","title":"1.6 \u66f4\u65b0\u65e5\u5fd7","description":"\u5347\u7ea7\u524d\u5148\u770b\u770b\uff0c\u4f1a\u4e0d\u4f1a\u6709\u60a8\u559c\u6b22\u7684\u7279\u6027","sidebar":"docs"},"view-engine":{"id":"view-engine","title":"17. \u89c6\u56fe/\u6a21\u677f\u5f15\u64ce","description":"\ud83d\udcdd \u6a21\u5757\u66f4\u65b0\u65e5\u5fd7","sidebar":"docs"},"virtual-deploy":{"id":"virtual-deploy","title":"34.4 \u4e8c\u7ea7\u865a\u62df\u76ee\u5f55\u90e8\u7f72","description":"https://www.bilibili.com/video/BV1Rv4y1P7ZB","sidebar":"docs"},"vsfast":{"id":"vsfast","title":"2.14 Visual Studio \u9ad8\u6548\u7387","description":"\u5de5\u6b32\u5584\u5176\u4e8b\u5fc5\u5148\u5229\u5176\u5668","sidebar":"docs"},"whyfurion":{"id":"whyfurion","title":"1.10 \u4e3a\u4ec0\u4e48\u662f Furion\uff1f","description":"\u767e\u5c0f\u50e7\u5168\u5929\u5019\u5f85\u547d\uff0c\u53ea\u8981\u786e\u8ba4 Bug\uff0c\u5f53\u5929\u4fee\u590d\uff0c\u5f53\u5929\u53d1\u7248","sidebar":"docs"}}}')}}]);