介尘部落

文学|音乐|休闲娱乐|计算机技术|地球科学|社会学——知识成就命运


Newtonsoft.Json在反序列化int的时候默认将空字符串识别为null,抛出异常。在WebApi的传参中是一个极大的困扰。问题就在于int.parse("")会报错。下面是几种常见的数字转换场景:> JsonConvert.DeserializeObject<int>(“4.5”)失败.> JToken.Parse(“4.5”).ToObject<int>()成功并返回4.> JsonConvert.DeserializeObject<uint>(“4.5”)成功并返回4.> JsonConvert.DeserializeO
Microsoft在最新的C#版本中引入了Source Generator。这是一项新功能,可以让我们在代码编译时生成源代码。在本文中,我将介绍四种C#中的代码生成方式,以简化我们的日常工作。然后,您可以视情况选择正确的方法。在 .NET 中,我们有以下几种方法来帮助我们生成代码:Code snippets.Reflection.T4 Template.[New] Source Generators in .NET 5.这四种方法的特点与优劣对比:方法场景优点缺点Code Snippets以特定格式创建代码块,例如属性,方法和类等。节省键入重复代码块的时间。仅适用于特定格式。无法自动更新。Re
Microsoft在最新的C#版本中引入了Source Generator。这是一项新功能,可以让我们在代码编译时生成源代码。在本文中,我将介绍四种C#中的代码生成方式,以简化我们的日常工作。然后,您可以视情况选择正确的方法。在 .NET 中,我们有以下几种方法来帮助我们生成代码:Code snippets.Reflection.T4 Template.[New] Source Generators in .NET 5.应该还有更多,但本文将介绍T4模板的使用。T4 TemplateT4 Text Template是文本块和可以生成文本文件的控制逻辑的混合体。T4表示text template
,发布于 2021-02-09 12:48
Microsoft在最新的C#版本中引入了Source Generator。这是一项新功能,可以让我们在代码编译时生成源代码。在本文中,我将介绍四种C#中的代码生成方式,以简化我们的日常工作。然后,您可以视情况选择正确的方法。在 .NET 中,我们有以下几种方法来帮助我们生成代码:Code snippets.Reflection.T4 Template.[New] Source Generators in .NET 5.应该还有更多,但本文将介绍使用Reflection反射的方法生成代码。ReflectionReflection(反射)广泛用于许多.NET框架和库中,例如ASP.NET Cor
Microsoft在最新的C#版本中引入了Source Generator。这是一项新功能,可以让我们在代码编译时生成源代码。在本文中,我将介绍四种C#中的代码生成方式,以简化我们的日常工作。然后,您可以视情况选择正确的方法。在 .NET 中,我们有以下几种方法来帮助我们生成代码:Code snippets.Reflection.T4 Template.[New] Source Generators in .NET 5.应该还有更多,但本文将介绍使用Code snippets的方法。Code snippets 代码片段Code snippets 是可重用的代码块,可以使用热键组合将其插入我们的
WPF作为.Net技术之上开发个性化桌面应用的首选技术方案,已经广为应用。在实际的开发中经常会遇到应用需要适应不同大小的屏幕尺寸,如在Web开发中,我们可以使用Rem单位系统实现自适应,但在桌面开发中的WPF技术之下,该如何实现自适应呢?我们的界面布局是默认采用的1920*1080的分辨率布局的,现在想自动适应不同的分辨率下的屏幕。如textblock宽100,高40,文字是20px,适应到分辨率为1600*900,该如何做才能让textblock看起来没变化。比较好的做法就是使用WPF中的组件ViewBox。只要按照固定值设计layout, 放入固定长宽的canvas/grid中,然后放入v
在使用ListView的时候,无论怎么设置ListView的ListBox.ItemTemplate\DataTemplate都没法使得列表项宽度达到100%,即自动适应父级元素宽度。做过WPF的都知道通过设置HorizontalAlignment =“ Stretch ”一般都可以自动占满宽度,但在ListView的场景下却没有作用。最后查阅资料发现,以下方法简单有效。应该是最优解了。<ListBox ItemsSource="{Binding}"> <ListBox.ItemContainerStyle> <Style
对ListView的事件可以直接写在<ListView 标签内,但在MVVM模式下绑定的列表项的事件捕捉,真费了不少功夫。如果直接使用ListView的点击事件,则不论点击的是不是列表项都会触发事件,并且在后代码中很难做点击的具体项的判断处理。查询微软文档,结果是如下方式设置事件:<!--The Style is defined in a ResourceDictionary, such as Window.Resources--><Style TargetType="ListViewItem"> <EventSetter
华为云镜像站点https://mirrors.huaweicloud.com/ 的Nuget镜像 包含了缓存的反向代理来加速这些API。 使用这个镜像可以在华为云和在应用开发可实现如下加速效果:对于包的搜索:无加速效果。搜索组件包是由额外的域名提供的,因此无法提供加速。本加速仅针对 api.nuget.org 进行,目前仅支持 v3 版本的 api 以及包存储安装、卸载、升级包等:完全加速。所有包信息均按天缓存在服务器上,每天每个包第一次访问为代理访问,随后均为本地访问包安装、升级下载文件:完全加速。每个包的每个版本第一次下载微代理访问,之后所