neucharframework / ncf Goto Github PK
View Code? Open in Web Editor NEWNeuCharFramework Template Project
License: Apache License 2.0
NeuCharFramework Template Project
License: Apache License 2.0
[07] 2022-02-08 11:13:08.0563 added Api path: /api/WeChat_OfficialAccount/MediaApi/UploadForeverVideoAsync
[07] 2022-02-08 11:13:08.0566 Api Task Count:16
[07] 2022-02-08 11:13:08.0623 create type: - WeChat_OfficialAccountController
[07] 2022-02-08 11:13:08.0624 ==== Finish BuildWebApi for WeChat_OfficialAccount / Total Time: 679 ms ====
[07] 2022-02-08 11:13:08.0626
[01] 2022-02-08 11:13:08.0653
[01] 2022-02-08 11:13:08.0653 Category Name | API Count| Cost Time | Average
[01] 2022-02-08 11:13:08.0655 --------------------------------------------------------------------------------
[01] 2022-02-08 11:13:08.0663 WeChat_MiniProgram | 146| 415.157ms | 2.844ms
[01] 2022-02-08 11:13:08.0664 WeChat_Open | 164| 414.4167ms | 2.527ms
[01] 2022-02-08 11:13:08.0665 WeChat_Work | 320| 553.8318ms | 1.731ms
[01] 2022-02-08 11:13:08.0669 Senparc.Xncf.DatabaseToolkit | 1| 105.9367ms | 105.937ms
[01] 2022-02-08 11:13:08.0685 WeChat_OfficialAccount | 776| 681.1814ms | 0.878ms
[01] 2022-02-08 11:13:08.0688 ================================================================================
[01] 2022-02-08 11:13:08.0715 Total | API Count:1407| Cost:807.6594ms |
[01] 2022-02-08 11:13:08.0716 Total Average Cost: 0.574 ms Task Count: 16
[01] 2022-02-08 11:13:08.0719
SenparcEntities 动态加载:Register | DbContextType:SystemServiceEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:DatabaseToolkitEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:XncfBuilderEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:WeixinSenparcEntities_Sqlite
SenparcEntitiesDbContextBase OnModelCreating:SystemServiceEntities_Sqlite
entity type: Senparc.Core.Models.AdminUserInfo
Hosting environment: Development
Content root path: C:\Users\Administrator\Desktop\NCF-Developer\src\Senparc.Web
Now listening on: https://localhost:5001
Now listening on: http://localhost:5000
Application started. Press Ctrl+C to shut down.
SenparcEntitiesDbContextBase OnModelCreating:SenparcEntitiesMultiTenant
entity type: Senparc.Ncf.Core.Models.DataBaseModel.TenantInfo
NcfUninstallException from TenantMiddleware
SenparcEntities 动态加载:Register | DbContextType:SystemServiceEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:DatabaseToolkitEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:XncfBuilderEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:WeixinSenparcEntities_Sqlite
SenparcEntitiesDbContextBase OnModelCreating:SystemServiceEntities_Sqlite
entity type: Senparc.Core.Models.AdminUserInfo
NcfUninstallException from TenantMiddleware
进入安装程序,检测是否需要初始化
SenparcEntities 动态加载:Register | DbContextType:SystemServiceEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:DatabaseToolkitEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:XncfBuilderEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:WeixinSenparcEntities_Sqlite
SenparcEntitiesDbContextBase OnModelCreating:SystemServiceEntities_Sqlite
entity type: Senparc.Core.Models.AdminUserInfo
SenparcEntities 动态加载:Register | DbContextType:SystemServiceEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:DatabaseToolkitEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:XncfBuilderEntities_Sqlite
SenparcEntities 动态加载:Register | DbContextType:WeixinSenparcEntities_Sqlite
SenparcEntitiesDbContextBase OnModelCreating:SystemServiceEntities_Sqlite
entity type: Senparc.Core.Models.AdminUserInfo
entity type: Senparc.Core.Models.FeedBack
entity type: Senparc.Ncf.Core.Models.Account
entity type: Senparc.Ncf.Core.Models.AccountPayLog
entity type: Senparc.Ncf.Core.Models.DataBaseModel.SysButton
entity type: Senparc.Ncf.Core.Models.DataBaseModel.SysMenu
entity type: Senparc.Ncf.Core.Models.DataBaseModel.SysPermission
entity type: Senparc.Ncf.Core.Models.DataBaseModel.SysRole
entity type: Senparc.Ncf.Core.Models.DataBaseModel.SysRoleAdminUserInfo
entity type: Senparc.Ncf.Core.Models.DataBaseModel.TenantInfo
entity type: Senparc.Ncf.Core.Models.DataBaseModel.XncfModule
entity type: Senparc.Ncf.Core.Models.PointsLog
entity type: Senparc.Ncf.Core.Models.SystemConfig
entity type: Senparc.Xncf.DatabaseToolkit.DbConfig
entity type: Senparc.Xncf.WeixinManager.Models.MpAccount
entity type: Senparc.Xncf.WeixinManager.Models.UserTag
entity type: Senparc.Xncf.WeixinManager.Models.UserTag_WeixinUser
entity type: Senparc.Xncf.WeixinManager.Models.WeixinUser
entity type: Senparc.Xncf.XncfBuilder.Config
SQLite Error 1: 'no such table: TenantInfos'.
fail: Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware[1]
An unhandled exception has occurred while executing the request.
Microsoft.Data.Sqlite.SqliteException (0x80004005): SQLite Error 1: 'no such table: TenantInfos'.
at Microsoft.Data.Sqlite.SqliteException.ThrowExceptionForRC(Int32 rc, sqlite3 db)
at Microsoft.Data.Sqlite.SqliteCommand.PrepareAndEnumerateStatements(Stopwatch timer)+MoveNext()
at Microsoft.Data.Sqlite.SqliteCommand.GetStatements(Stopwatch timer)+MoveNext()
at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteDbDataReaderAsync(CommandBehavior behavior, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Storage.RelationalCommand.ExecuteReaderAsync(RelationalCommandParameterObject parameterObject, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable1.AsyncEnumerator.InitializeReaderAsync(DbContext _, Boolean result, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable
1.AsyncEnumerator.MoveNextAsync()
at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable1 asyncEnumerable, CancellationToken cancellationToken) at Microsoft.EntityFrameworkCore.Query.ShapedQueryCompilingExpressionVisitor.SingleOrDefaultAsync[TSource](IAsyncEnumerable
1 asyncEnumerable, CancellationToken cancellationToken)
at Senparc.Ncf.Repository.RepositoryBase1.GetFirstOrDefaultObjectAsync(Expression
1 where, String[] includes)
at Senparc.Ncf.Service.ServiceBase1.GetObjectAsync(Expression
1 where, String[] includes)
at Senparc.Ncf.Service.TenantInfoService.CreateOrUpdateTenantInfoAsync(CreateOrUpdate_TenantInfoDto createOrUpdate_TenantInfoDto, Boolean throwIfExisted)
at Senparc.Ncf.Service.TenantInfoService.CreateInitTenantInfoAsync(HttpContext httpContext)
at Senparc.Web.Pages.Install.IndexModel.OnGetAsync() in C:\Users\Administrator\Desktop\NCF-Developer\src\Senparc.Web\Pages\Install\Index.cshtml.cs:line 118
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.ExecutorFactory.GenericTaskHandlerMethod.Convert[T](Object taskAsObject)
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.ExecutorFactory.GenericTaskHandlerMethod.Execute(Object receiver, Object[] arguments)
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker.InvokeHandlerMethodAsync()
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker.InvokeNextPageFilterAsync()
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker.Rethrow(PageHandlerExecutedContext context)
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker.InvokeInnerFilterAsync()
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeFilterPipelineAsync()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Senparc.Ncf.Service.MultiTenant.TenantMiddleware.InvokeAsync(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
在初次启动NCF框架时,可以选择为NCF的安装提供系统名称、管理员名称和数据库连接字符串等设置选项。
可以操作切换数据库最好,有的大项目分很多数据库可以传数据库名字切换最佳
后台添加新管理员账号“未赋角色”权限,直接用新管理员账号在后台登录出现找不到页面(404),
然后直接在地址栏输入“https://localhost:44311/Admin/”打开,却可以打开后台默认首页
首页的下面“功能模块”部分又显示了已安装的模块,然后点击“模块”下方的详细页面“按钮”也可以打开模块的详细页面
没有相应“角色”权限的空账号又可以操作模块详细页面上的两个“功能”按钮哦
应该是页面权限没有配置到,之前有跟苏总提过,好像没有更新到,
空“角色”账号登录后在地址栏直接输入后台其他页面地址打开,都是出现找不到页面(404),没有其他提示,不知道是不是“故意”的,呵呵
数据库、后端服务均启动成功运行后,再启动前端项目,点击菜单扩张管理/模块管理页面,接口报错。
System.NotSupportedException: Serialization and deserialization of 'System.Action`1[[AutoMapper.Profile, AutoMapper, Version=7.0.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005]]' instances are not supported. The unsupported member type is located on type 'System.Action`1[AutoMapper.Profile]'. Path: $.Data.AutoMapMappingConfigs.
---> System.NotSupportedException: Serialization and deserialization of 'System.Action`1[[AutoMapper.Profile, AutoMapper, Version=7.0.1.0, Culture=neutral, PublicKeyToken=be96cd2c38ef1005]]' instances are not supported.
at System.Text.Json.Serialization.Converters.UnsupportedTypeConverter`1.Write(Utf8JsonWriter writer, T value, JsonSerializerOptions options)
at System.Text.Json.Serialization.JsonConverter`1.TryWrite(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.Converters.IEnumerableDefaultConverter`2.OnWriteResume(Utf8JsonWriter writer, TCollection value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonCollectionConverter`2.OnTryWrite(Utf8JsonWriter writer, TCollection value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.TryWrite(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1.GetMemberAndWriteJson(Object obj, WriteStack& state, Utf8JsonWriter writer)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryWrite(Utf8JsonWriter writer, T value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.TryWrite(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.Converters.ListOfTConverter`2.OnWriteResume(Utf8JsonWriter writer, TCollection value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonCollectionConverter`2.OnTryWrite(Utf8JsonWriter writer, TCollection value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.TryWrite(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.Metadata.JsonPropertyInfo`1.GetMemberAndWriteJson(Object obj, WriteStack& state, Utf8JsonWriter writer)
at System.Text.Json.Serialization.Converters.ObjectDefaultConverter`1.OnTryWrite(Utf8JsonWriter writer, T value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.TryWrite(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.WriteCore(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
--- End of inner exception stack trace ---
at System.Text.Json.ThrowHelper.ThrowNotSupportedException(WriteStack& state, NotSupportedException ex)
at System.Text.Json.Serialization.JsonConverter`1.WriteCore(Utf8JsonWriter writer, T& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.Serialization.JsonConverter`1.WriteCoreAsObject(Utf8JsonWriter writer, Object value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.JsonSerializer.WriteCore[TValue](JsonConverter jsonConverter, Utf8JsonWriter writer, TValue& value, JsonSerializerOptions options, WriteStack& state)
at System.Text.Json.JsonSerializer.WriteStreamAsync[TValue](Stream utf8Json, TValue value, JsonTypeInfo jsonTypeInfo, CancellationToken cancellationToken)
at System.Text.Json.JsonSerializer.WriteStreamAsync[TValue](Stream utf8Json, TValue value, JsonTypeInfo jsonTypeInfo, CancellationToken cancellationToken)
at System.Text.Json.JsonSerializer.WriteStreamAsync[TValue](Stream utf8Json, TValue value, JsonTypeInfo jsonTypeInfo, CancellationToken cancellationToken)
at Microsoft.AspNetCore.Mvc.Formatters.SystemTextJsonOutputFormatter.WriteResponseBodyAsync(OutputFormatterWriteContext context, Encoding selectedEncoding)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResultFilterAsync>g__Awaited|30_0[TFilter,TFilterAsync](ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResultExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext[TFilter,TFilterAsync](State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.InvokeResultFilters()
--- End of stack trace from previous location ---
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeNextResourceFilter>g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
at Microsoft.AspNetCore.Authorization.Policy.AuthorizationMiddlewareResultHandler.HandleAsync(RequestDelegate next, HttpContext context, AuthorizationPolicy policy, PolicyAuthorizationResult authorizeResult)
at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
at Swashbuckle.AspNetCore.SwaggerUI.SwaggerUIMiddleware.Invoke(HttpContext httpContext)
at Swashbuckle.AspNetCore.Swagger.SwaggerMiddleware.Invoke(HttpContext httpContext, ISwaggerProvider swaggerProvider)
at Senparc.Xncf.Tenant.OHS.Remote.TenantMiddleware.InvokeAsync(HttpContext context)
at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)
HEADERS
=======
Accept: application/json, text/plain, */*
Connection: close
Host: localhost:5000
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Edg/107.0.1418.62
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOjEsIm5iZiI6MTY3MDI1Mzg5NywiZXhwIjoxNjcwNzkzODk3LCJpYXQiOjE2NzAyNTM4OTcsImlzcyI6Imh0dHBzOi8vbG9jYWxob3N0OjQ0MzExIiwiYXVkIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NDQzMTEifQ.flZzSdAlxSYJv1fQJSYvz2e9J5wZfzyP9yw3bJDQt_Q
Cookie: userInfo=%7B%22id%22%3A%2200000000-0000-0000-0000-000000000000%22%2C%22code%22%3A%220112222111%22%2C%22fullName%22%3A%22superadmin%22%2C%22userName%22%3A%22superadmin%22%2C%22ip%22%3A%22192.168.1.146%22%2C%22isExpire%22%3Afalse%2C%22loginTime%22%3A%222022-11-30%2020%3A17%3A41%22%2C%22nickName%22%3A%22superadmin%22%2C%22token%22%3A%22MDY3OCs5NjY1ZWU1MTliNGQtYTYwYS02MDM0LWI0ZTgtODY3MzUyNGY%3D%22%2C%22extData%22%3A%22%22%2C%22productCode%22%3A%22MES%22%7D; redirectUrl=%2Fpps%2Fpps-entry%2FAssemblyShop; .AspNetCore.Antiforgery.nTsCt8sg9tA=CfDJ8LwPEyRAHkdAt0b1jNh6H_zSLNom3PS78Lrh73xG05etXUEzj7fjUqUDZlu4PC42B3vjL6XuEShT_Rn8wt4IhOAIi13Cjkc2dNZlb-WrjxfIx3f1cxu36Yl7cwNQzBk4vbvNAa0yrk8AXxcuBof6z84; .AspNetCore.NcfAdminAuthorizeScheme=CfDJ8LwPEyRAHkdAt0b1jNh6H_ygrzFoqXZDDi4qayfXqS7XbCIWByLmb4RTQNmVkU4wkX_2gMibgaKeh_xDXrzU5syJJ1qiR-FUd_eAehCKog5cLv4wGa9ZyOjeZbXVSPXXwC7I2rNuhEqCGmwL_nnOD1xxZ9aiifLNWelqdHgP633kXp0J1ZcJ_nDlOwPkLT2nn7bCBrAmbYAZOJBdna6cqe4Mve5l-DMoDzljAudPUemJMoRxpgCoOK3LAbaNpmaKv9dS1UslbTjWttmo7tXniFbjY7LANYvSLvagizJBf2Eoa0efShz3mcvHQPx0gkwhnlgggWdtX9K-KZbOIgYp8rCdXFddD34ziYPg6cadGgA1Y6og1-EJjLLndoDUVJX-dgKv-zuSyv4q8VP9QHri7vLt4J6tan6g2c2r_kHojrMli8GWuV1lszKBhU4vYSMnBMoVMopQjZu729RV9fk0L7RAe-l98rZnCur5zkrvfn1GnFCt01ts2wY_0W7VmT8UXYKfCDwzuMvb23Se4kcBsRJrZqsDf9bkB8XU8AvBWVvwt_qWhhkpV1Dfd-sFa_KZGw; Admin-Token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOjEsIm5iZiI6MTY3MDI1Mzg5NywiZXhwIjoxNjcwNzkzODk3LCJpYXQiOjE2NzAyNTM4OTcsImlzcyI6Imh0dHBzOi8vbG9jYWxob3N0OjQ0MzExIiwiYXVkIjoiaHR0cHM6Ly9sb2NhbGhvc3Q6NDQzMTEifQ.flZzSdAlxSYJv1fQJSYvz2e9J5wZfzyP9yw3bJDQt_Q; Admin-Role=[%22administrator%22]
Referer: http://localhost:9527/
x-forwarded-host: localhost:9527
x-forwarded-proto: http
x-forwarded-port: 9527
x-forwarded-for: 127.0.0.1
sec-fetch-dest: empty
sec-fetch-mode: cors
sec-fetch-site: same-origin
sec-ch-ua-platform: "Windows"
sec-ch-ua-mobile: ?0
sec-ch-ua: "Microsoft Edge";v="107", "Chromium";v="107", "Not=A?Brand";v="24"
warn: Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter[1]
An error occurred while trying to create an XmlSerializer for the type 'Senparc.Ncf.Core.AppServices.AppResponseBase`1[[System.Collections.Generic.List`1[[Senparc.Areas.Admin.Domain.Dto.SystemConfigDto, Senparc.Areas.Admin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]], System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]'.
System.InvalidOperationException: There was an error reflecting type 'Senparc.Ncf.Core.AppServices.AppResponseBase`1[System.Collections.Generic.List`1[Senparc.Areas.Admin.Domain.Dto.SystemConfigDto]]'.
---> System.InvalidOperationException: There was an error reflecting property 'Data'.
---> System.InvalidOperationException: Member AppResponseBaseOfListOfSystemConfigDto.Data of type System.Collections.Generic.List`1[Senparc.Areas.Admin.Domain.Dto.SystemConfigDto] hides base class member AppResponseBase.Data of type System.Object. Use XmlElementAttribute or XmlAttributeAttribute to specify a new name.
at System.Xml.Serialization.StructMapping.FindDeclaringMapping(MemberMapping member, StructMapping& declaringMapping, String parent)
at System.Xml.Serialization.XmlReflectionImporter.InitializeStructMembers(StructMapping mapping, StructModel model, Boolean openModel, String typeName, RecursionLimiter limiter)
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlReflectionImporter.InitializeStructMembers(StructMapping mapping, StructModel model, Boolean openModel, String typeName, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns, Boolean openModel, XmlAttributes a, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, XmlAttributes a, Boolean repeats, Boolean openModel, RecursionLimiter limiter)
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, XmlAttributes a, Boolean repeats, Boolean openModel, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportElement(TypeModel model, XmlRootAttribute root, String defaultNamespace, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(Type type, XmlRootAttribute root, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type)
at Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter.CreateSerializer(Type type)
warn: Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter[1]
An error occurred while trying to create an XmlSerializer for the type 'Senparc.Ncf.Core.AppServices.AppResponseBase`1[[Senparc.Areas.Admin.Domain.Dto.SystemConfigDto, Senparc.Areas.Admin, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]'.
System.InvalidOperationException: There was an error reflecting type 'Senparc.Ncf.Core.AppServices.AppResponseBase`1[Senparc.Areas.Admin.Domain.Dto.SystemConfigDto]'.
---> System.InvalidOperationException: There was an error reflecting property 'Data'.
---> System.InvalidOperationException: Member AppResponseBaseOfSystemConfigDto.Data of type Senparc.Areas.Admin.Domain.Dto.SystemConfigDto hides base class member AppResponseBase.Data of type System.Object. Use XmlElementAttribute or XmlAttributeAttribute to specify a new name.
at System.Xml.Serialization.StructMapping.FindDeclaringMapping(MemberMapping member, StructMapping& declaringMapping, String parent)
at System.Xml.Serialization.XmlReflectionImporter.InitializeStructMembers(StructMapping mapping, StructModel model, Boolean openModel, String typeName, RecursionLimiter limiter)
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlReflectionImporter.InitializeStructMembers(StructMapping mapping, StructModel model, Boolean openModel, String typeName, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportStructLikeMapping(StructModel model, String ns, Boolean openModel, XmlAttributes a, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, XmlAttributes a, Boolean repeats, Boolean openModel, RecursionLimiter limiter)
--- End of inner exception stack trace ---
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(TypeModel model, String ns, ImportContext context, String dataType, XmlAttributes a, Boolean repeats, Boolean openModel, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportElement(TypeModel model, XmlRootAttribute root, String defaultNamespace, RecursionLimiter limiter)
at System.Xml.Serialization.XmlReflectionImporter.ImportTypeMapping(Type type, XmlRootAttribute root, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type, String defaultNamespace)
at System.Xml.Serialization.XmlSerializer..ctor(Type type)
at Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter.CreateSerializer(Type type)
NcfUninstallException from TenantMiddleware
2022-12-05 23:27:44 2022-12-05 15:27:44.214 UTC [338] ERROR: relation "TenantInfos" does not exist at character 140
2022-12-05 23:27:44 2022-12-05 15:27:44.214 UTC [338] STATEMENT: SELECT t."Id", t."AddTime", t."AdminRemark", t."Enable", t."Flag", t."Guid", t."LastUpdateTime", t."Name", t."Remark", t."TenantKey"
2022-12-05 23:27:44 FROM "TenantInfos" AS t
2022-12-05 23:27:44 WHERE NOT (t."Flag") AND t."Enable"
2022-12-05 23:29:17 2022-12-05 15:29:17.265 UTC [48] LOG: checkpoint starting: time
2022-12-05 23:29:22 2022-12-05 15:29:22.365 UTC [48] LOG: checkpoint complete: wrote 50 buffers (0.3%); 0 WAL file(s) added, 0 removed, 0 recycled; write=5.012 s, sync=0.038 s, total=5.100 s; sync files=38, longest=0.007 s, average=0.001 s; distance=197 kB, estimate=3151 kB
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation.
---> Senparc.Ncf.Core.NcfUninstallException: TriedMatching 为 false,推测系统未进行安装
at Senparc.Ncf.Core.MultiTenant.MultiTenantHelper.TryGetAndCheckRequestTenantInfo(IServiceProvider serviceProvider, String referenceMethod, DbContext dbContext)
at Senparc.Ncf.Core.Models.SenparcEntitiesDbContextBase.SetGlobalQuery[T](ModelBuilder builder)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor, Boolean wrapExceptions)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at Senparc.Ncf.Core.Models.SenparcEntitiesDbContextBase.OnModelCreating(ModelBuilder modelBuilder)
at Senparc.Ncf.Core.Models.SenparcEntitiesBase.OnModelCreating(ModelBuilder modelBuilder)
at Senparc.Core.Models.SenparcEntities.OnModelCreating(ModelBuilder modelBuilder) in E:\05_Senparc\NCF\src\Senparc.Core\Models\SenparcEntities.cs:line 58
at Microsoft.EntityFrameworkCore.Infrastructure.ModelCustomizer.Customize(ModelBuilder modelBuilder, DbContext context)
at Microsoft.EntityFrameworkCore.Infrastructure.ModelSource.CreateModel(DbContext context, IConventionSetBuilder conventionSetBuilder, ModelDependencies modelDependencies)
at Microsoft.EntityFrameworkCore.Infrastructure.ModelSource.GetModel(DbContext context, IConventionSetBuilder conventionSetBuilder, ModelDependencies modelDependencies)
at Microsoft.EntityFrameworkCore.Internal.DbContextServices.CreateModel()
at Microsoft.EntityFrameworkCore.Internal.DbContextServices.get_Model()
拉取代码后 启动时 OnModelCreating()中的base.OnModelCreating(modelBuilder);(58行)报错:
"内部异常 NcfUninstallException: TriedMatching 为false,推测系统未进行安装"。
经删除数据库后 重启启动可以正常启动。
[root@master201 Senparc.Web]# docker build -t ncf .
Sending build context to Docker daemon 29.56MB
Step 1/17 : FROM microsoft/aspnetcore:2.0 AS base
2.0: Pulling from microsoft/aspnetcore
55cbf04beb70: Pull complete
2ad9fb8b9d3d: Pull complete
7debd121b442: Pull complete
76fbad01d0bd: Pull complete
1cba46fa0c00: Pull complete
Digest: sha256:8bd7808981568a92b7f1d0aa4bab07ef811e6417898847d9caf698a4a788ab11
Status: Downloaded newer image for microsoft/aspnetcore:2.0
---> db030c19e94b
Step 2/17 : WORKDIR /app
---> Running in 15eb47da4bfd
Removing intermediate container 15eb47da4bfd
---> 1ef2b6863834
Step 3/17 : EXPOSE 80
---> Running in fdea09de6630
Removing intermediate container fdea09de6630
---> 91f286eec28e
Step 4/17 : FROM microsoft/aspnetcore-build:2.0 AS build
2.0: Pulling from microsoft/aspnetcore-build
55cbf04beb70: Already exists
1607093a898c: Pull complete
9a8ea045c926: Pull complete
d4eee24d4dac: Pull complete
9996a3dbf48f: Pull complete
e626b8d73a89: Pull complete
4d833e0fa218: Pull complete
1eebc8a262e7: Pull complete
4867c32ba582: Pull complete
c0ece037099c: Pull complete
Digest: sha256:ab861527a8485e7df91069e80cd7a94237c22995f13494c2cccc071b76e347f0
Status: Downloaded newer image for microsoft/aspnetcore-build:2.0
---> 06a6525397c2
Step 5/17 : WORKDIR /src
---> Running in 4ece2cccc655
Removing intermediate container 4ece2cccc655
---> 3b90570690c9
Step 6/17 : COPY Senparc.Core.sln ./
COPY failed: stat /var/lib/docker/tmp/docker-builder849824203/Senparc.Core.sln: no such file or directory
最新版developer分支,手动更新数据库,报如下错误:More than one DbContext was found. Specify which one to use. Use the '-Context' parameter for PowerShell commands and the '--context' parameter for dotnet commands.
我记得数据库连接字符串在Senparc.Web项目里啊
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.