From 188bc370edfc74ec5fb5d05860a71c9ce8a45c38 Mon Sep 17 00:00:00 2001 From: zpc Date: Thu, 15 Aug 2024 10:48:43 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .editorconfig | 226 ++++++++++++++++++ HuanMengProject.sln | 7 + .../HuanMeng.MiaoYu.Code/Cache/MiaoYuCache.cs | 18 +- .../HuanMeng.MiaoYu.Code/Chat/ChatBLL.cs | 10 +- .../HuanMeng.MiaoYu.WebApiAOT/Dockerfile | 29 +++ .../HuanMeng.MiaoYu.WebApiAOT.csproj | 17 ++ .../HuanMeng.MiaoYu.WebApiAOT.http | 11 + .../HuanMeng.MiaoYu.WebApiAOT/Program.cs | 35 +++ .../Properties/launchSettings.json | 24 ++ .../appsettings.Development.json | 8 + .../appsettings.json | 9 + 11 files changed, 373 insertions(+), 21 deletions(-) create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/Dockerfile create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.http create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/Program.cs create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/Properties/launchSettings.json create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.Development.json create mode 100644 src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.json diff --git a/.editorconfig b/.editorconfig index 0579872..1c01d66 100644 --- a/.editorconfig +++ b/.editorconfig @@ -2,3 +2,229 @@ root = true [*.cs] charset = utf-8 #设置文件字符集为utf-8,在 Linux 系统中,通常推荐使用 UTF-8 而不是 UTF-8 with BOM。添加 BOM 可能会干扰那些不期望在文件开头出现非 ASCII 字节的软件对 UTF-8 的使用。 + +#### Core EditorConfig 选项 #### + +# 缩进和间距 +indent_size = 4 +indent_style = space +tab_width = 4 + +# 新行首选项 +end_of_line = crlf +insert_final_newline = false + +#### .NET 编码约定 #### + +# 组织 Using +dotnet_separate_import_directive_groups = true +dotnet_sort_system_directives_first = false +file_header_template = unset + +# this. 和 Me. 首选项 +dotnet_style_qualification_for_event = false +dotnet_style_qualification_for_field = false +dotnet_style_qualification_for_method = false +dotnet_style_qualification_for_property = false + +# 语言关键字与 bcl 类型首选项 +dotnet_style_predefined_type_for_locals_parameters_members = true +dotnet_style_predefined_type_for_member_access = true + +# 括号首选项 +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity +dotnet_style_parentheses_in_other_operators = never_if_unnecessary +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity + +# 修饰符首选项 +dotnet_style_require_accessibility_modifiers = for_non_interface_members + +# 表达式级首选项 +dotnet_style_coalesce_expression = true +dotnet_style_collection_initializer = true +dotnet_style_explicit_tuple_names = true +dotnet_style_namespace_match_folder = true +dotnet_style_null_propagation = true +dotnet_style_object_initializer = true +dotnet_style_operator_placement_when_wrapping = beginning_of_line +dotnet_style_prefer_auto_properties = true:suggestion +dotnet_style_prefer_collection_expression = when_types_loosely_match +dotnet_style_prefer_compound_assignment = true +dotnet_style_prefer_conditional_expression_over_assignment = true +dotnet_style_prefer_conditional_expression_over_return = true +dotnet_style_prefer_foreach_explicit_cast_in_source = when_strongly_typed +dotnet_style_prefer_inferred_anonymous_type_member_names = true +dotnet_style_prefer_inferred_tuple_names = true +dotnet_style_prefer_is_null_check_over_reference_equality_method = true +dotnet_style_prefer_simplified_boolean_expressions = true +dotnet_style_prefer_simplified_interpolation = true + +# 字段首选项 +dotnet_style_readonly_field = false + +# 参数首选项 +dotnet_code_quality_unused_parameters = all:silent + +# 禁止显示首选项 +dotnet_remove_unnecessary_suppression_exclusions = none + +# 新行首选项 +dotnet_style_allow_multiple_blank_lines_experimental = true +dotnet_style_allow_statement_immediately_after_block_experimental = true + +#### c# 编码约定 #### + +# var 首选项 +csharp_style_var_elsewhere = false +csharp_style_var_for_built_in_types = false +csharp_style_var_when_type_is_apparent = false + +# Expression-bodied 成员 +csharp_style_expression_bodied_accessors = true +csharp_style_expression_bodied_constructors = false +csharp_style_expression_bodied_indexers = true +csharp_style_expression_bodied_lambdas = true +csharp_style_expression_bodied_local_functions = false +csharp_style_expression_bodied_methods = false +csharp_style_expression_bodied_operators = false +csharp_style_expression_bodied_properties = true + +# 模式匹配首选项 +csharp_style_pattern_matching_over_as_with_null_check = true +csharp_style_pattern_matching_over_is_with_cast_check = true +csharp_style_prefer_extended_property_pattern = true +csharp_style_prefer_not_pattern = true +csharp_style_prefer_pattern_matching = true +csharp_style_prefer_switch_expression = false:silent + +# Null 检查首选项 +csharp_style_conditional_delegate_call = true + +# 修饰符首选项 +csharp_prefer_static_local_function = false +csharp_preferred_modifier_order = public,private,protected,internal,file,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,required,volatile,async +csharp_style_prefer_readonly_struct = false +csharp_style_prefer_readonly_struct_member = true + +# 代码块首选项 +csharp_prefer_braces = true:suggestion +csharp_prefer_simple_using_statement = true +csharp_style_namespace_declarations = block_scoped +csharp_style_prefer_method_group_conversion = true +csharp_style_prefer_primary_constructors = true +csharp_style_prefer_top_level_statements = true + +# 表达式级首选项 +csharp_prefer_simple_default_expression = true +csharp_style_deconstructed_variable_declaration = true +csharp_style_implicit_object_creation_when_type_is_apparent = false:silent +csharp_style_inlined_variable_declaration = true +csharp_style_prefer_index_operator = false:silent +csharp_style_prefer_local_over_anonymous_function = true +csharp_style_prefer_null_check_over_type_check = true +csharp_style_prefer_range_operator = false:silent +csharp_style_prefer_tuple_swap = false:silent +csharp_style_prefer_utf8_string_literals = true +csharp_style_throw_expression = true +csharp_style_unused_value_assignment_preference = discard_variable:silent +csharp_style_unused_value_expression_statement_preference = discard_variable + +# "using" 指令首选项 +csharp_using_directive_placement = outside_namespace:suggestion + +# 新行首选项 +csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true +csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = true +csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = true +csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true +csharp_style_allow_embedded_statements_on_same_line_experimental = true + +#### C# 格式规则 #### + +# 新行首选项 +csharp_new_line_before_catch = true +csharp_new_line_before_else = true +csharp_new_line_before_finally = true +csharp_new_line_before_members_in_anonymous_types = true +csharp_new_line_before_members_in_object_initializers = true +csharp_new_line_before_open_brace = all +csharp_new_line_between_query_expression_clauses = true + +# 缩进首选项 +csharp_indent_block_contents = true +csharp_indent_braces = false +csharp_indent_case_contents = true +csharp_indent_case_contents_when_block = true +csharp_indent_labels = one_less_than_current +csharp_indent_switch_labels = true + +# 空格键首选项 +csharp_space_after_cast = false +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_after_comma = true +csharp_space_after_dot = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_after_semicolon_in_for_statement = true +csharp_space_around_binary_operators = before_and_after +csharp_space_around_declaration_statements = false +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_before_comma = false +csharp_space_before_dot = false +csharp_space_before_open_square_brackets = false +csharp_space_before_semicolon_in_for_statement = false +csharp_space_between_empty_square_brackets = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_declaration_name_and_open_parenthesis = false +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_between_square_brackets = false + +# 包装首选项 +csharp_preserve_single_line_blocks = true +csharp_preserve_single_line_statements = true + +#### 命名样式 #### + +# 命名规则 + +dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion +dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface +dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i + +dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.types_should_be_pascal_case.symbols = types +dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case + +dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion +dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members +dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case + +# 符号规范 + +dotnet_naming_symbols.interface.applicable_kinds = interface +dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.interface.required_modifiers = + +dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum +dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.types.required_modifiers = + +dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method +dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.non_field_members.required_modifiers = + +# 命名样式 + +dotnet_naming_style.pascal_case.required_prefix = +dotnet_naming_style.pascal_case.required_suffix = +dotnet_naming_style.pascal_case.word_separator = +dotnet_naming_style.pascal_case.capitalization = pascal_case + +dotnet_naming_style.begins_with_i.required_prefix = I +dotnet_naming_style.begins_with_i.required_suffix = +dotnet_naming_style.begins_with_i.word_separator = +dotnet_naming_style.begins_with_i.capitalization = pascal_case diff --git a/HuanMengProject.sln b/HuanMengProject.sln index 97bce27..4dfbb76 100644 --- a/HuanMengProject.sln +++ b/HuanMengProject.sln @@ -51,6 +51,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "瑙e喅鏂规椤", "瑙e喅 README.md = README.md EndProjectSection EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HuanMeng.MiaoYu.WebApiAOT", "src\2-api\HuanMeng.MiaoYu.WebApiAOT\HuanMeng.MiaoYu.WebApiAOT.csproj", "{4EEC3C12-633D-431C-9C92-73C00D8CACBB}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -101,6 +103,10 @@ Global {CF7FEDBA-FC1A-4D6D-92F1-6882B5143E0A}.Debug|Any CPU.Build.0 = Debug|Any CPU {CF7FEDBA-FC1A-4D6D-92F1-6882B5143E0A}.Release|Any CPU.ActiveCfg = Release|Any CPU {CF7FEDBA-FC1A-4D6D-92F1-6882B5143E0A}.Release|Any CPU.Build.0 = Release|Any CPU + {4EEC3C12-633D-431C-9C92-73C00D8CACBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4EEC3C12-633D-431C-9C92-73C00D8CACBB}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4EEC3C12-633D-431C-9C92-73C00D8CACBB}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4EEC3C12-633D-431C-9C92-73C00D8CACBB}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -124,6 +130,7 @@ Global {6E79742F-1E56-4B7D-94E8-B509D43561FA} = {DD14191F-22CE-48D8-A944-B8A41C97ACD4} {729950F2-71EE-42C0-8B46-295740DE20BA} = {0C0B6EB5-E41D-46D9-9F60-90D320A2EEF3} {CF7FEDBA-FC1A-4D6D-92F1-6882B5143E0A} = {8D39E84B-2810-41D7-AFE6-0A58E09E34C3} + {4EEC3C12-633D-431C-9C92-73C00D8CACBB} = {0C0B6EB5-E41D-46D9-9F60-90D320A2EEF3} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {4A1DC406-AFAA-4884-859C-51B9B26E37FC} diff --git a/src/0-core/HuanMeng.MiaoYu.Code/Cache/MiaoYuCache.cs b/src/0-core/HuanMeng.MiaoYu.Code/Cache/MiaoYuCache.cs index 6a655aa..65b9fe1 100644 --- a/src/0-core/HuanMeng.MiaoYu.Code/Cache/MiaoYuCache.cs +++ b/src/0-core/HuanMeng.MiaoYu.Code/Cache/MiaoYuCache.cs @@ -1,11 +1,5 @@ - - -using AutoMapper; - using HuanMeng.MiaoYu.Code.Cache.Contract; using HuanMeng.MiaoYu.Code.Cache.Special; -using HuanMeng.MiaoYu.Code.DataAccess; -using HuanMeng.MiaoYu.Model.Dto.Character; using System.Linq.Expressions; @@ -14,7 +8,6 @@ namespace HuanMeng.MiaoYu.Code.Cache /// /// 缂撳瓨绫 /// - /// public partial class MiaoYuCache(CacheBase cacheBase) { @@ -249,8 +242,9 @@ namespace HuanMeng.MiaoYu.Code.Cache /// /// /// + /// /// - public static CommonDataEntityCache GetMiaoYuDataEntityCache(CacheBase cacheBase, Expression> expWhere = null) where T : class + public static CommonDataEntityCache GetMiaoYuDataEntityCache(CacheBase cacheBase, Expression>? expWhere = null) where T : class { object cacheLock; var typeo = typeof(T); @@ -283,14 +277,13 @@ namespace HuanMeng.MiaoYu.Code.Cache /// /// 娓呴櫎鍏ㄩ儴缂撳瓨 /// - /// public static void ClareMiaoYuDataEntityCache(MiaoYuBase miaoYuBase) { foreach (var item in CacheLockList) { var t = item.Key; Type cacheType = typeof(MiaoYuDataEntityCache<>).MakeGenericType(t); - var shujuduixiang = Activator.CreateInstance(cacheType, miaoYuBase, item.Value, 36000); + var shujuduixiang = Activator.CreateInstance(cacheType, miaoYuBase, item.Value, 36000, null); var x = shujuduixiang as ICacheClearData; if (x != null) { @@ -311,14 +304,13 @@ namespace HuanMeng.MiaoYu.Code.Cache /// /// 鍒锋柊閮ㄧ紦瀛 /// - /// public static void ReloadMiaoYuDataEntityCache(MiaoYuBase miaoYuBase) { foreach (var item in CacheLockList) { var t = item.Key; Type cacheType = typeof(MiaoYuDataEntityCache<>).MakeGenericType(t); - var shujuduixiang = Activator.CreateInstance(cacheType, miaoYuBase, item.Value, 36000); + var shujuduixiang = Activator.CreateInstance(cacheType, miaoYuBase, item.Value, 36000, null); var x = shujuduixiang as ICacheReloadData; if (x != null) { @@ -361,7 +353,7 @@ namespace HuanMeng.MiaoYu.Code.Cache /// 鑾峰彇鍥剧墖 /// /// - /// + /// /// public static string GetImageUrl(this int imageId, CacheBase cacheBase) { diff --git a/src/0-core/HuanMeng.MiaoYu.Code/Chat/ChatBLL.cs b/src/0-core/HuanMeng.MiaoYu.Code/Chat/ChatBLL.cs index 813214e..4b6cf83 100644 --- a/src/0-core/HuanMeng.MiaoYu.Code/Chat/ChatBLL.cs +++ b/src/0-core/HuanMeng.MiaoYu.Code/Chat/ChatBLL.cs @@ -18,8 +18,6 @@ public class ChatBLL : MiaoYuBase /// public async Task>> GetChatMessage(int characterId) { - - var charact = MiaoYuCache.CharacterList.FirstOrDefault(it => it.Id == characterId); if (charact == null) { @@ -38,8 +36,6 @@ public class ChatBLL : MiaoYuBase list.Add(chatMessageDto2); if (_UserId == 0) { - - var chat = new ChatMessageDto() { Id = 0, @@ -305,10 +301,10 @@ public class ChatBLL : MiaoYuBase transaction.Commit(); } - catch (Exception ex) + catch (Exception) { transaction.Rollback(); - throw ex; + throw; } } #endregion @@ -362,9 +358,7 @@ public class ChatBLL : MiaoYuBase /// /// /// - /// /// - /// /// /// private async Task ClaudeChat(CharacterCache? charact, List mess) diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Dockerfile b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Dockerfile new file mode 100644 index 0000000..fdedf50 --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Dockerfile @@ -0,0 +1,29 @@ +#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging. + +FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base +USER app +WORKDIR /app +EXPOSE 8080 + +FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build +# Install clang/zlib1g-dev dependencies for publishing to native +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + clang zlib1g-dev +ARG BUILD_CONFIGURATION=Release +WORKDIR /src +COPY ["src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj", "src/2-api/HuanMeng.MiaoYu.WebApiAOT/"] +RUN dotnet restore "./src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj" +COPY . . +WORKDIR "/src/src/2-api/HuanMeng.MiaoYu.WebApiAOT" +RUN dotnet build "./HuanMeng.MiaoYu.WebApiAOT.csproj" -c $BUILD_CONFIGURATION -o /app/build + +FROM build AS publish +ARG BUILD_CONFIGURATION=Release +RUN dotnet publish "./HuanMeng.MiaoYu.WebApiAOT.csproj" -c $BUILD_CONFIGURATION -o /app/publish /p:UseAppHost=true + +FROM mcr.microsoft.com/dotnet/runtime-deps:8.0 AS final +WORKDIR /app +EXPOSE 8080 +COPY --from=publish /app/publish . +ENTRYPOINT ["./HuanMeng.MiaoYu.WebApiAOT"] \ No newline at end of file diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj new file mode 100644 index 0000000..b1511ae --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.csproj @@ -0,0 +1,17 @@ + + + + net8.0 + enable + enable + true + true + Linux + ..\..\.. + + + + + + + diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.http b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.http new file mode 100644 index 0000000..fc964b0 --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/HuanMeng.MiaoYu.WebApiAOT.http @@ -0,0 +1,11 @@ +@HuanMeng.MiaoYu.WebApiAOT_HostAddress = http://localhost:5233 + +GET {{HuanMeng.MiaoYu.WebApiAOT_HostAddress}}/todos/ +Accept: application/json + +### + +GET {{HuanMeng.MiaoYu.WebApiAOT_HostAddress}}/todos/1 +Accept: application/json + +### diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Program.cs b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Program.cs new file mode 100644 index 0000000..d3b48c9 --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Program.cs @@ -0,0 +1,35 @@ +using System.Text.Json.Serialization; + +var builder = WebApplication.CreateSlimBuilder(args); + +builder.Services.ConfigureHttpJsonOptions(options => +{ + options.SerializerOptions.TypeInfoResolverChain.Insert(0, AppJsonSerializerContext.Default); +}); + +var app = builder.Build(); + +var sampleTodos = new Todo[] { + new(1, "Walk the dog"), + new(2, "Do the dishes", DateOnly.FromDateTime(DateTime.Now)), + new(3, "Do the laundry", DateOnly.FromDateTime(DateTime.Now.AddDays(1))), + new(4, "Clean the bathroom"), + new(5, "Clean the car", DateOnly.FromDateTime(DateTime.Now.AddDays(2))) +}; + +var todosApi = app.MapGroup("/todos"); +todosApi.MapGet("/", () => sampleTodos); +todosApi.MapGet("/{id}", (int id) => + sampleTodos.FirstOrDefault(a => a.Id == id) is { } todo + ? Results.Ok(todo) + : Results.NotFound()); + +app.Run(); + +public record Todo(int Id, string? Title, DateOnly? DueBy = null, bool IsComplete = false); + +[JsonSerializable(typeof(Todo[]))] +internal partial class AppJsonSerializerContext : JsonSerializerContext +{ + +} diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Properties/launchSettings.json b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Properties/launchSettings.json new file mode 100644 index 0000000..b1faefb --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/Properties/launchSettings.json @@ -0,0 +1,24 @@ +{ + "profiles": { + "http": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "todos", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "dotnetRunMessages": true, + "applicationUrl": "http://localhost:5233" + }, + "Container (Dockerfile)": { + "commandName": "Docker", + "launchBrowser": true, + "launchUrl": "{Scheme}://{ServiceHost}:{ServicePort}/todos", + "environmentVariables": { + "ASPNETCORE_HTTP_PORTS": "8080" + }, + "publishAllPorts": true + } + }, + "$schema": "http://json.schemastore.org/launchsettings.json" +} \ No newline at end of file diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.Development.json b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.Development.json new file mode 100644 index 0000000..0c208ae --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} diff --git a/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.json b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.json new file mode 100644 index 0000000..10f68b8 --- /dev/null +++ b/src/2-api/HuanMeng.MiaoYu.WebApiAOT/appsettings.json @@ -0,0 +1,9 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*" +}