软件工程
文章平均质量分 85
软件工程
NLP工程化
NLP工程师
展开
-
博客文章索引汇总--C#
一.ABP VNext学习日记1.ABP VNext学习日记12.ABP VNext学习日记23.ABP VNext学习日记34.ABP VNext学习日记45.ABP VNext学习日记56.ABP VNext学习日记6二.ASP.NET Core学习日记ASP.NET Core学习日记1ASP.NET Core学习日记2ASP.NET Core学习日记3ASP.NET Core学习日记4ASP.NET Core学习日记5ASP.NET Core学习日记6ASP.NET Cor原创 2020-10-11 00:04:57 · 1650 阅读 · 0 评论 -
博客文章索引汇总--软件工程
一.Android学习日记1.Android学习日记1二.小程序学习日记1.小程序学习日记12.小程序学习日记23.小程序学习日记34.小程序学习日记4三.C++学习日记1.C++学习日记12.C++学习日记23.C++学习日记34.C++学习日记45.C++学习日记56.C++学习日记6四.Cocos2d-JS学习日记1.Cocos2d-JS学习日记12.Cocos2d-JS学习日记23.Cocos2d-JS学习日记34.Cocos2d-JS学习日记45.Cocos2原创 2020-10-11 00:05:03 · 533 阅读 · 0 评论 -
基于ABP实现DDD--聚合和聚合根实践
在下面的例子中涉及Repository、Issue、Label、User这4个聚合根,接下来以Issue聚合为例进行分析,其中Issue聚合是由Issue[聚合根]、Comment[实体]、IssueLabel[值对象]组成的集合。1.单个单元原则 简单理解,一个聚合就是由实体和值对象组成的集合,通过聚合根将所有关联对象绑定在一起,一个聚合是一个相对独立的业务单元。聚合和聚合根原则包括:包含业务原则,单个单元原则,事务边界原则,可序列化原则。接下来通过例子重点介绍下什么是单个单元原则,本质上是为原创 2022-07-15 12:49:08 · 710 阅读 · 0 评论 -
WPF学习日记55
1.System.Windows.Data.Binding.Binding(string path)解析:使用初始路径初始化Binding类的新实例。2.RoutedEventHandler System.Windows.FrameworkElement.Loaded解析:当对元素进行布局、呈现,且可将其用于交互时发生。3.System.Windows.Controls.Primitives.Selector.SelectedItem解析:获取或设置当前所选内容中的第一项或如果所选内容为空则返回n原创 2021-01-17 13:09:14 · 511 阅读 · 2 评论 -
WPF学习日记37
1.ASCII码解析:[1]0~31及127是控制字符或通信专用字符;[2]32126是字符,其中4857为09十个阿拉伯数字,6590为25个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号。ASCII码主要用于计算机领域,在国内工业控制中很少采用ASCII码作为标准,所以Modus ASCII在国内的工业控制领域运用很少。2.Resource.resx资源文件解析:可以把用到的图标、图片、声音等外部资源放在一个.resx中,这样的好处是不用考虑路径的问题,而且还对资源有原创 2020-12-23 09:06:21 · 644 阅读 · 0 评论 -
Rider调试ASP.NET Core时报thread not gc-safe的解决方法
新建了一个ASP.NET Core 5.0的Web API项目,当使用断点调试Host.CreateDefaultBuilder(args)时,进入该函数后查看中间变量的值,报错Evaluation is not allowed: The thread is not at a GC-safe point。在群里问了也没人回应,可能没有遇到过这个问题吧。一.解决问题的过程1.Visual Studio 2022调试 首先想到的是可能Rider不行,换成Visual Studio 2022试试,所原创 2022-08-10 18:26:33 · 454 阅读 · 0 评论 -
WPF学习日记59
1.ModernWpf控件解析:[1]Button、Calendar、CheckBox、ComboBox、ContextMenu、DataGrid、DatePicker、Expander、GroupBox、ListBox、ListView、Menu、MenuItem、PasswordBox、ProgressBar、RadioButton、RepeatButton、RichTextBox、ScrollBar、ScrollViewer、Slider、TabControl、TextBox、ToggleButt原创 2022-02-10 19:18:54 · 386 阅读 · 0 评论 -
ASP.NET Core学习日记22
1.System.Linq.Enumerable解析:Provides a set of static (Shared in Visual Basic) methods for querying objects that implement IEnumerable<out T>.2.IEnumerable<int> System.Linq.Enumerable.Range(int start, int count)解析:Generates a sequence of integ原创 2021-02-09 18:00:36 · 272 阅读 · 0 评论 -
ABP 6.0.0-rc.1的新特性
2022-07-26官方发布ABP 6.0.0-rc.1版本,本文挑选了几个新特性进行了介绍,主要包括LeptonX Lite默认主题、OpenIddict模块,以及如何将Identity Server迁移到OpenIddict。据ABP官方公众号介绍,ABP 6.0.0稳定版的计划发布日期为2022-09-06,具体以实际发布日期为准。一.LeptonX Lite默认主题 LeptonX Lite算是LeptonX Theme的一个简单实现,使用的是Razor Pages技术,而LeptonX原创 2022-08-07 08:15:00 · 785 阅读 · 0 评论 -
ABP VNext学习日记9
1.System.Reflection.Assembly解析:Represents an assembly, which is a reusable, versionable, and self-describing building block of a common language runtime application.2.IServiceScope Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions原创 2021-01-17 13:13:09 · 500 阅读 · 0 评论 -
WPF学习日记25
1.数据寄存器和内部寄存器解析:[1]数据寄存器:“D100”、“D200” //字符串为十进制[2]内部继电器:“M100”、“M200” //字符串为十进制2.System.Windows.Media.Brush System.Windows.Controls.Control.Background()解析:Gets or sets a brush that describes the background of a control.3.System.Windows.Media.Effe原创 2020-12-22 18:40:01 · 268 阅读 · 0 评论 -
C#学习日记20
1.通过代码创建表达式树解析:ParameterExpression、BinaryExpression、MethodCallExpression、ConstantExpression,这些类几乎都没有提供构造方法,而且所有的属性都几乎只是只读。因此一般不会直接创建这些类的实例,而是调用Expression类的Parameter、MakeBinary、Call、Constant等静态方法来生成,这些静态方法一般称作创建表达式树的工厂方法,而属性则通过方法参数类设置。[1]先创建ParameterExpre原创 2022-02-14 18:46:05 · 277 阅读 · 0 评论 -
WPF学习日记30
1.object System.ComponentModel.TypeConverter.ConvertFrom(object value)解析:将给定值转换为此转换器的类型。2.System.Windows.Media.Brush解析:定义用于绘制图形对象的对象。派生自Brush的类描述如何绘制区域。3.void HslCommunication.Serial.SerialBase.Open()解析:打开一个新的串行端口连接。4.void HslCommunication.Serial.Ser原创 2020-12-22 18:36:14 · 620 阅读 · 0 评论 -
ASP.NET Core学习日记6
1.Swashbuckle.AspNetCore解析:它是一个开源项目,用于生成ASP.NET Core Web API的Swagger文档。[1]Swashbuckle.AspNetCore.Swagger:将SwaggerDocument对象公开为JSON终结点的Swagger对象模型和中间件。[2]Swashbuckle.AspNetCore.SwaggerGen:从路由、控制器和模型直接生成SwaggerDocument对象的Swagger生成器。它通常与 Swagger终结点中间件结合,以自原创 2020-10-01 11:06:51 · 802 阅读 · 0 评论 -
IdentityServer4总结
一.客户端模式客户端模式只对客户端进行授权,不涉及到用户信息。如果API需要提供到第三方应用,第三方应用自己做用户授权,不需要用到用户资源,就可以用客户端模式,只对客户端进行授权访问api资源。1.添加客户端new Client(){ ClientId="apiClientCd", //客户端Id ClientSecrets={new Secret("apiSecret".Sha256()) }, //客户端密码 AllowedGrantTypes=GrantTypes.原创 2022-02-14 18:47:50 · 1461 阅读 · 0 评论 -
ABP VNext学习日记13
1.Microsoft.AspNetCore.Builder.IApplicationBuilder.ApplicationServices解析:Gets or sets the IServiceProvider that provides access to the application’s service container.2.Microsoft.Extensions.DependencyInjection.IServiceScopeFactory解析:A factory for creati原创 2021-01-17 13:13:55 · 506 阅读 · 0 评论 -
C#学习日记3
1.Image控件[1]动态加载图片后置代码private void BtnLoadFromFile_Click(object sender, RoutedEventArgs e){ OpenFileDialog openFileDialog = new OpenFileDialog(); if(openFileDialog.ShowDialog() == true) ...原创 2019-07-25 23:07:13 · 275 阅读 · 0 评论 -
C#学习日记3
1.反射的用途解析:System.Reflection类如下所示:[1]它允许在运行时查看特性[attribute]信息。[2]它允许审查集合中的各种类型,以及实例化这些类型。[3]它允许延迟绑定的方法和属性[property]。[4]它允许在运行时创建新类型,然后使用这些类型执行一些任务。2.C#索引器解析:索引器允许一个对象可以像数组一样被索引。当为类定义一个索引器时,该类的行为就会像一个虚拟数组[virtual array]一样。可以使用数组访问运算符([])来访问该类的实例。一维索引器原创 2020-10-09 23:32:07 · 292 阅读 · 0 评论 -
ASP.NET Core学习日记17
1.迁移数据表解析:[1]dotnet ef migrations add XXX[2]dotnet ef database update2.IdentityDbContext解析:[1]AspNetUsers:用户表[2]AspNetUserClaims:用户权限表[3]AspNetUserLogins:第三方登录表[4]AspNetUserTokens:用户Token表[5]AspNetUserRoles:用户角色表[6]AspNetRoles:角色表[7]AspNetRoleC原创 2020-12-18 19:39:37 · 470 阅读 · 1 评论 -
ASP.NET Core学习日记32
1.Microsoft.EntityFrameworkCore.Metadata.Builders.EntityTypeBuilder解析:Provides a simple API for configuring an IMutableEntityType.2.Microsoft.EntityFrameworkCore.ModelBuilder解析:Provides a simple API surface for configuring a IMutableModel that defines t原创 2021-03-06 12:03:16 · 258 阅读 · 0 评论 -
WPF学习日记8
1.System.Collections.ObjectModel.ObservableCollection解析:表示一个动态数据集合,它可在添加、删除项目或刷新整个列表时提供通知。2.System.Collections.Generic.KeyValuePair解析:定义可设置或检索的键/值对。3.<i:Interaction.Triggers>解析:<i:Interaction.Triggers> <i:EventTrigger EventName="Load原创 2020-10-13 18:35:56 · 899 阅读 · 0 评论 -
ABP VNext学习日记12
1.IMvcBuilder Microsoft.Extensions.DependencyInjection.MvcServiceCollectionExtensions.AddControllersWithViews(this IServiceCollection services)解析:Adds services for controllers to the specified IServiceCollection. This method will not register services use原创 2021-01-17 13:13:22 · 344 阅读 · 0 评论 -
WPF学习日记51
1.从库查询策略解析:[1]随机策略:随机选择一个从库进行查询[2]权重策略:根据权重比例选择从库查询[3]轮询策略:根据顺序选择从库查询2.FontAwesome.WPF.ImageAwesome解析:Represents a control that draws an FontAwesome icon as an image.3.VerticalAlignment System.Windows.VerticalAlignment.Stretch解析:子元素将拉伸以填充父元素的布局槽。4原创 2021-01-17 13:07:36 · 460 阅读 · 0 评论 -
ASP.NET Core学习日记33
1.Nullable数据结构解析:[SerializableAttribute]public struct Nullable<T> where T : struct[1]Nullable i = null;与int? i = null;是等效的[2]基元类型可以直接隐式转换为可空类型[3]可空类型不可隐式转换为对应的基元类型[4]将可空类型转换为对应的基元类型:int? i = 123;int j = i ?? 0;2.里氏代换原则解析:子类型必须能够替换掉它们的父类型原创 2021-05-08 15:36:14 · 462 阅读 · 0 评论 -
WPF学习日记43
1.object System.Xml.Serialization.XmlSerializer.Deserialize(Stream stream)解析:包含由指定的XML文档反序列化Stream。2.void GalaSoft.MvvmLight.Messaging.IMessenger.Send<bool>(bool message, object token)解析:Sends a message to registered recipients. The message will r原创 2020-12-23 09:06:53 · 218 阅读 · 0 评论 -
WPF学习日记34
1.appSettings和applicationSettings区别解析:[1]ApplicationSettings是.NET 2.0之后出现[2]appSettings是.NET 1.1的方式[3].NET 2.0之后两个都可以用string sConnectionString = ConfigurationManager.ConnectionStrings["connString"].ConnectionString;string sPath = ConfigurationManager原创 2020-12-22 18:40:39 · 587 阅读 · 0 评论 -
ABP VNext学习日记23
1.Http API及动态代理解析:[1]自动发布ApplicationService为Http API[2]自动生成Http客户端动态代理[3]支持JS和.NET Core客户端代理生成2.ABP微服务结构解析:3.ABP数据访问解析:[1]工作单元[2]数据仓储:EF Core,Dapper和MongoDB[3]数据过滤[4]种子数据4.ABP身份验证和授权解析:[1]权限系统[2]多租户支持[3]Identity Server 4[4]服务接口支持5.使用abp原创 2022-02-12 13:52:10 · 950 阅读 · 0 评论 -
ABP VNext学习日记20
1.AbpApiControllerActivator解析:实现了IHttpControllerActivator接口,根据controller的类型生成指定的controller。2.AbpDynamicApiControllerInterceptor<T>解析:方法拦截器,拦截Action请求,调用服务层中的方法。3.mqsvc.exe解析:mqsvc.exe是微软Windows操作系统自带的程序,用于消息队列服务。4.Volo.Abp.AspNetCore.MultiTenan原创 2021-06-03 20:44:04 · 843 阅读 · 0 评论 -
ABP VNext学习日记3
1.ABP中的DTO解析:在ABP的设计中,有两种不同类型的DTO,分别是用于新增、修改、删除的Input DTO,和用于查询的Output DTO。2.Unit of Work解析:工作单元与事务类似,封装了一系列原子级的数据库操作。3.Aggregate&AggregateRoot[聚合,聚合根]解析:聚合是业务的最小工作单元,有时一个实体就是一个小聚合,而为聚合对外提供访问机制的对象,就是聚合根。4.Repository[仓储]解析:仓储封装了一系列对象数据库操作的方法,完成对象原创 2020-10-02 20:30:07 · 1404 阅读 · 0 评论 -
ASP.NET Core学习日记20
1.富客户端应用程序线程底层实现解析:[1]WPF:在元素的Dispatcher对象上调用BeginInvoke或Invoke[2]WinForm:调用空间的BeginInvoke或Invoke[3]UWP:调用Dispatcher对象上的RunAsync或Invoke2.未观察到的异常解析:可以通过全局的TaskScheduler.UnobservedTaskException来订阅未观察到的异常。3.Task组合器解析:[1]Task.WhenAny[2]Task.WhenAll4原创 2020-12-20 16:03:42 · 455 阅读 · 2 评论 -
ASP.NET Core学习日记2
1.ASP.NET Core提供的服务器实现解析:[1]Kestrel是跨平台Web服务器。Kestrel通常使用IIS在反向代理配置中运行。Kestrel可作为面向公众的边缘服务器运行,直接向Internet公开。[2]IIS HTTP服务器是适用于使用IIS的Windows的服务器。借助此服务器,ASP.NET Core应用和IIS在同一进程中运行。[3]HTTP.sys是适用于不与IIS一起使用的Windows的服务器。2.ControllerBase提供的方法解析:[1]BadRequ原创 2020-10-01 10:03:05 · 694 阅读 · 0 评论 -
ABP VNext学习日记5
1.ABP后台模块解析:[1]Volo.Abp.Threading:提供了一些常用的线程组件,其中AbpTimer就是在里面实现的。[2]Volo.Abp.BackgroundWorkers:后台工作者的定义和实现。[3]Volo.Abp.BackgroundJobs.Abstractions:后台任务的一些共有定义。[4]Volo.Abp.BackgroundJobs:默认的后台任务管理器实现。[5]Volo.Abp.BackgroundJobs.HangFire:基于Hangfire库实现的原创 2020-10-02 20:29:49 · 1646 阅读 · 0 评论 -
WPF学习日记18
1.System.ICloneable.Clone()解析:创建作为当前实例副本的新对象。2.System.Runtime.InteropServices.ComVisibleAttribute.ComVisibleAttribute(bool visibility)解析:初始化ComVisibleAttribute类的新实例。3.System.Xml.Serialization.XmlTypeAttribute.XmlTypeAttribute(string typeName)解析:新实例初始化原创 2020-12-19 10:49:09 · 373 阅读 · 0 评论 -
ASP.NET Core学习日记24
1.IWebHostBuilder Microsoft.AspNetCore.Hosting.WebHostBuilderExtensions.UseStartup<Startup>(this IWebHostBuilder hostBuilder)解析:指定被Web主机使用的开始类型。2.Microsoft.AspNetCore.Mvc.ResponseCacheLocation解析:Determines the value for the “Cache-control” header原创 2021-02-09 18:02:07 · 188 阅读 · 0 评论 -
WPF学习日记38
1.System.Windows.Data.RelativeSource.AncestorType()解析:获取或设置要查找的上级节点的类型。2.System.Windows.Controls.UserControl解析:提供创建的控件的简单方法。3.System.Windows.Data.RelativeSourceMode.FindAncestor解析:引用数据绑定元素的父链中的上级。这可用于绑定到特定类型的上级或其子类。若要指定AncestorType()和/或AncestorLevel()原创 2020-12-23 09:06:27 · 281 阅读 · 0 评论 -
WPF学习日记22
1.System.Windows.Controls.ItemsPanelTemplate解析:指定面板的ItemsPresenter的项的布局为创建ItemsControl。2.System.Windows.Controls.WrapPanel解析:定位子元素按顺序排列,从左到右,将内容断开到下一行包含框的边缘。后续排序按照按顺序从上到下或从右到左,具体取决于值Orientation()属性。3.System.Windows.DataTrigger解析:表示一个应用属性值或执行操作时,如果绑定的数原创 2020-12-20 16:06:49 · 529 阅读 · 0 评论 -
WPF学习日记3
1.ICommand接口解析:WPF命令是实现了ICommand接口的类,它包含两个方法和一个事件:[1]Execute方法:命令执行,或者说命令作用于命令目标之上。[2]CanExecute方法:在执行之前用来探知命令是否可以被执行。[3]CanExecuteChanged事件:当命令可执行状态发生改变时,可激发此事件来通知其它对象。2.WPF两大类Template解析:[1]ControlTemplate是算法内容的表现形式,一个控件怎样组织其内部结构才能让它更符合业务逻辑,让用户操作起来原创 2020-10-12 18:53:20 · 484 阅读 · 2 评论 -
ASP.NET Core学习日记15
1.System.ComponentModel.DataAnnotations.ValidationResult解析:Represents a container for the results of a validation request.2.System.ComponentModel.DataAnnotations.ValidationContext解析:Describes the context in which a validation check is performed.3.Syste原创 2020-12-18 19:39:29 · 359 阅读 · 0 评论 -
WPF学习日记48
1.System.StringSplitOptions解析:指定适用的System.String.Split方法重载包含还是省略返回值中的空子字符串。2.System.StringSplitOptions.RemoveEmptyEntries解析:返回值不包括含有空字符串的数组元素。...原创 2020-12-24 09:13:43 · 320 阅读 · 0 评论 -
基于ABP实现DDD--领域服务、应用服务和DTO实践
什么是领域服务呢?领域服务就是领域对象本身的服务,通常是通过多个聚合以实现单个聚合无法处理的逻辑。原创 2022-07-21 08:50:56 · 460 阅读 · 0 评论