lindexi

林德熙 - Windows 10 App Developer

林德熙

github 设置自动删除合并的分支

在 github 上提 MR 在合并之后的分支,很少需要继续保存,如果真的有需求,建议使用 tag 保存,而在合并之后不需要这个分支,默认的 github 不会删除这个分支

dotnet 手工打一个 dotnet tool 包

现在依靠 dotnet 平台,可以方便分发工具,利用 NuGet 服务进行分发和使用工具。打一个 dotnet tool 包,可以将这个包上传到 NuGet 上,小伙伴通过和安装 NuGet 相同方式就可以将工具安装在本机上。本文将告诉大家如何手工打一个 dotnet tool 包,方便小伙伴自己写工具用来创建代码

win10 uwp 关联文件

有时候应用需要打开后缀名为x的文件,那么如何从文件打开应用?

win10 uwp 使用 msbuild 命令行编译 UWP 程序

本文告诉大家如何使用 msbuild 命令行编译一个 UWP 程序

dotnet 删除文件夹方法

使用 C# 可以在 dotnet 一句话删除文件夹,但是这个方法坑,本文给大家一个好用的方法删除文件夹

dotnet 修复 C# 8.0 语法编译失败

在使用 using 等新语法时,在 VisualStudio 2019 会自动判断框架版本,如在 net 45 就不会自动使用最新版本的语法,需要修改项目文件

dotnet 用 gcdump 调试应用程序内存占用

在 Linux 等系统下,没有和 Windows 下这么好的 VisualStudio 支持。在客户端的环境,也不太好在用户端安装一个 VisualStudio 调试。在遇到需要在服务器端或客户端调试应用程序的内存占用时,可以尝试使用 dotnet 的 gcdump 工具进行调试,这个工具使用十分简单,功能也很强大

dotnet 配置 Gitlab 的 Runner 做 CI 自动构建

今天在少珺小伙伴的协助下,使用了 gitlab 的 runner 给全组的项目做自动的构建。为什么需要使用 Gitlab 的 Runner 做自动构建,原因是之前是用的是 Jenkins 而新建一个底层库项目想要接入自动构建等,需要来回在 Gitlab 和 Jenkins 上配置,大概步骤差不多有 20 步,同时还有一堆 Jenkins 的坑。另外服务器是共有的,有其他组的小伙伴安装了诡异的工具让我的打包不断炸掉。于是我就和头像大人商量使用虚拟机环境的方法,我在空闲的服务器上安装了 VirtualBox 虚拟机,然后在虚拟机部署 Runner 接着在项目接入,这样就可以确定打包的环境,同时迁移服务器也比较方便

win10 uwp 在 VisualStudio 打包测试完成自动上传到应用商店

在 VisualStudio 2019 提供了在运行测试程序之后,自动将生成的包上传到合作伙伴应用商店。我的应用运行一次自动测试需要半个钟,有这个功能我就不需要在电脑等待半个钟然后去网页上传包,而是可以让 VisualStudio 2019 自动在测试完成之后上传。在勾选通过时需要填写用户信息和租户信息和密码,本文告诉大家如何拿到这些数据填写

dotnet 新 sdk style 项目格式的一些命名空间和引用

在使用 sdk style 的 csproj 项目格式,会发现右击引用找不到程序集,此时有一些命名空间没有找到。本文收集一些命名空间所在的引用

win10 uwp 切换主题

本文主要说如何在UWP切换主题,并且如何制作主题。

win10 uwp 使用 Microsoft.Graph 发送邮件

在 2018 年 10 月 13 号参加了 张队长Office 365 训练营 学习如何开发 Office 365 插件和 OAuth 2.0 开发,于是我就使用 UWP 尝试使用 Microsoft.Graph 经过了一天的测试终于成功使用发送邮件 本文告诉大家如何在 UWP 调用 Microsoft.Graph 发送邮件

dotnet 判断其他进程未响应

在 dotnet 有很多方法判断其他软件的其他进程窗口未响应

dotnet 单元测试注入文件读写

在进行文件读写时,如果进行单元测试,是需要很多设计,因为本地的文件可能因为单元测试之间的占用,以及还原数据,会影响业务。本文告诉大家使用注入的方式,让文件读写一个抽象的对象

dotnet 新 sdk style 项目格式 文件冲突

在使用 dotnet 的 sdk style 项目格式,会默认在项目上引用文件,此时如果是从旧格式迁移,那么会发现文件冲突。多次引用相同文件

msbuild 项目文件常用判断条件

在写项目文件的时候,需要根据不同的条件定义或执行不同的代码,有一些比较常使用的判断,本文收藏起来,方便大家找

git无法pull仓库refusing to merge unrelated histories

本文讲的是把git在最新2.9.2,合并pull两个不同的项目,出现的问题 如何去解决 fatal: refusing to merge unrelated histories 合并两个不同历史的仓库

dotnet 文件读写务必注意事项

这是启亮整理的文档,我就帮他发布了

dotnet 判断特定进程存在方法

本文告诉大家几个方法判断特定的进程是否存在,同时对比这些方法的性能

dotnet 使用 System.CommandLine 写命令行程序

在写命令行程序的时候,会遇到命令行解析的问题,以及参数的使用和规范化等坑。现在社区开源了命令行项目,可以帮助小伙伴快速开发命令行程序,支持自动的命令行解析和规范的参数

dotnet 使用 Qpush 快速从电脑到手机推送文字

在手机打字总不是方便,于是就有了 Qpush 这个工具,通过这个工具可以快速从电脑到手机推送文字。 但是这个工具没有找到客户端,于是我就给他写了一个库,通过这个库可以快速进行开发

win10 uwp 发布旁加载自动更新

在很多企业使用的程序都是不能通过微软商店发布,原因很多,其中我之前的团队开发了很久的应用,结果发现没有用户能从微软应用商店下载所以我对应用商店没有好感。但是作为一个微软粉丝,怎么能不支持 UWP 开发呢。但是做出来 UWP 应用还是需要用户能用,经过了很长的时间,和很多大佬聊了之后,终于对新的项目使用旁加载的方式,使用自己的服务器提供下载更新

win10 uwp 在 Grid 接收键盘消息

小伙伴问我为什么他的选中的 Grid 无法接收到键盘消息,原因是在 UWP 中只有 Control 类才可以拿到键盘焦点,而 Grid 是 Panel 没有继承 Control 类所以 Grid 无法拿到焦点。需要在容器里面放一个继承 Control 的类,这个类可以接收键盘事件,通过路由事件让容器拿到键盘

git 修改commit日期为之前的日期

我在之前修改了一个文件,但是没有commit,现在我想要commit,日期为那天的日期 git 修改日期的方法很简单,因为有一个命令--date 可以设置 git 提交时间。 默认的 git 的提交时间会受到系统的时间的影响,如果想要系统的时间不会影响到 git 的提交时间,请使用本文的方式,自己指定提交的时间

dotnet 修复找不到 System.ServiceProcess 定义

本文告诉大家如果复制网上一段代码发现 System.ServiceProcess 提示找不到方法或定义,需要手动添加引用

dotnet 枚举当前设备wifi热点

在 dotnet 程序没有现有的方法可以列举当前设备的无线网卡找到的 WIFI 热点,需要写一点代码才能使用

dotnet 对 DateTime 排序

在写 DateTime 排序时,按照时间的先后,离现在过去越远的越小。按照从小到大排序,将会先排最过去的时间,最后的值的时间是最大的。将时间按照从1970开始计算秒数,可以算出数值,数值代表值大小

dotnet 找不到 PostAsJsonAsync 方法

在网络编程可以使用 PostAsJsonAsync 这个方便的方法将一个对象作为 json 推送到服务器,这个方法是一个扩展方法,在之前的框架,可以在 System.Net.Http.dll 找到这个好用的扩展方法,但是在 4.5 的时候就被移除了。本文告诉大家如何安装这个扩展方法

dotnet 获取本机 IP 地址方法

本文告诉大家如何在 C# .NET 获取本机 IP 地址

visual studio 2015 warning MSB3246

在我们很高兴的按下 本地计算机运行 按钮,希望看到我们程序运行的时候,垃圾vs就告诉我们,你的程序出现了问题,问题就是: warning MSB3246: 解析的文件包含错误图像、无元数据或不可访问。未能加载文件或程序集“*.dll”或它的某一个依赖项。试图加载格式不正确的程序。 其中*.dll就是一个dll名称,那么遇到这个问题,不是修复vs就能做好的,我找了好久,在堆栈炸了找到一个可以用的方法

git镜像仓库

有时候我们会把一些仓库放到本地,当他更新的时候,可以使用简单命名更新他。 不是所有时间我们都有网,所以把远程的仓库作为镜像,可以方便我们查看 普通的git clone不能下载所有分支,想要简单的git clone所有分支,可以用镜像方法

dotnet 获取当前进程方法

本文告诉大家如何在 dotnet 程序获取当前进程

dotnet 命名管道名字长度限制

在 dotnet 里面可以使用 NamedPipeClientStream 作为命名管道,此时的命名有长度限制,要求在 256 字符之内

Visual studio 创建项目失败vstemplate

Visual studio 创建项目失败 提示 the vstemplate file references the wizard class ‘Microsoft.VisualStudio.WinRT.TemplateWizards.ApplicationInsights.Wizard’ which does not exsist in the assembly ‘Microsoft.VisualStudio.WinRT.TemplateWizards, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’.

Visual Studio 自定义项目模板

经常需要新建一个项目,项目有很多重复的东西,如然后新建View文件夹,ViewModel文件夹,Model文件夹,还有把我们的ViewModelBase放入ViewModel,如果还用框架,还需要加上好多。 还需要在每个文件夹加上声明,于是每次做的重复的就有很多。