前言

会写这篇是因为想记入一个 bug. 随便以后记入一些 Visual Studio 和 VS Code 相关的冬冬呗.

当 VS Code Hot Reload 遇上 View Component 的 Bug

由于这个 Bug 涉及到多方面 (不容易提问), 所以我就没有 report github issue. 希望过阵子它自己好起来呗 (目前是 workaround)

Reproduction Setup

dotnet new webapp -o TestHotReload

创建 Component (参考: ASP.NET Core – View Component)

CallToAction/CallToActionViewComponent.cs

using Microsoft.AspNetCore.Mvc;

public class CallToActionViewComponent : ViewComponent
{
public IViewComponentResult Invoke()
{
return View(
$"~/Pages/Shared/Component/CallToAction/Index.cshtml"
);
}
}

CallToAction/Index.cshtml

<h1>Hello World!!</h1>

Index.cshtml

@page
@model IndexModel
@addTagHelper *, TestHotReload
@{
ViewData["Title"] = "Home page";
} <div class="text-center">
<vc:call-to-action></vc:call-to-action>
</div>

注: 一定要用 TagHelper 引入. 如果使用 Component.InvokeAsync 那这个 Bug 不会出现.

Visual Studio Ctrl + F5 Run

先用 Visual Studio 跑看看

and then 我们修改 Index.cshtml

这时 Visual Studio 会 popup rebuild needed

注意哦, Component.InvokeAsync 的话则是不需要 rebuild 的.

VS Code dotnet watch run

当修改 Index.cshtml 以后会直接报错

解决方法是 Ctrl + R rebuild 就可以了.

VS Code Font Ligatures

参考

YouTube – Font Ligatures in VS Code: Set up Font ligatures in VS Code

Medium – Set Fira Code as your VS Code font | Windows 11

Ligatures 连字,长这样

本来时 === 和 !==

连字看上去很 cool,而且不是原装,所以深受大家喜爱。

首先去下载字体 Github – FiraCode

然后双击 .ttf 文件安装到 Windows(Light - Bold 装到完)

restart Windows

开启 VS Code > Ctrl + Shift + P 进入 User Settings (JSON)

添加 font setting

"editor.fontFamily": "Fira Code, Consolas, Courier New, monospace",
"editor.fontLigatures": true,
"editor.fontSize": 15,

fontFamily 加上 Fira Code。后面几个是默认 VS Code 的,当 Windows 没有安装 Fira Code 时就会 fallback 到后面几个选项。

fontLigatures 就是开启连字咯。

fontSize 不是必须的,看个人喜好。默认应该是 14,我觉得有点小。

 

Visual Studio & VS Code的更多相关文章

  1. ShortKey – Visual Studio/VS Code etc.

    Switching between .h and .cppIn Visual Studio 2013 and later :there is a default keyboard shortcut f ...

  2. visual studio 的 code snippet(代码片段)

    visual studio自带代码片段,用了6年visual studio才知道有这么个玩意……惭愧 最简单例子 for循环,for,连点两下tab……自己研究吧

  3. Visual Studio 201~ Code 格式检查

    前言 好的代码格式,有利于阅读和查错,慢慢的有利于养成良好的编码习惯,也可以帮我们找出一些低级错误. StyleCop 在Nuget上搜索stylecop,选择MSBuild的那个版本,安装. 手动编 ...

  4. Why do I keep getting mixed tabs and spaces in a Visual Studio C# code window?[vs power tools issue transfered]

    goto tools->option->power tools-> turn "use mixed tabs" option to off. you won`t ...

  5. [搬运] 将 Visual Studio 的代码片段导出到 VS Code

    原文 : A Visual Studio to Visual Studio Code Snippet Converter 作者 : Rick Strahl 译者 : 张蘅水 导语 和原文作者一样,水弟 ...

  6. Visualize Code with Visual Studio

    In this post, App Dev Manager Ed Tovsen spotlight the features and benefits of Code Maps in Visual S ...

  7. Visual Studio 的代码片段工具

    当安装完Visual Studio之后,会有附带一些原生的代码片段文件(*.snippet),对于vs2013参考目录如下: X:\Program Files (x86)\Microsoft Visu ...

  8. 用Visual Studio调试Windows和驱动程序

    由于本人能力有限,翻译不足之处敬请谅解,欢迎批评指正:sunylat@163.com Visual Studio版本:Visual Studio 2015企业版,中文环境. MSDN原文:https: ...

  9. Visual Studio的MethMVVM

    MethMVVM介绍: Visual Studio Gallery是微软针对VisualStudio扩展提供的一种解决方案,在Visual Studio Gallery你能够找到各种不同主题的解决方案 ...

  10. Visual Studio 2010 中的 Web 开发

    概述 Microsoft Visual Studio 2010 为 ASP.NET Web 应用程序的开发提供非常多新的功能.这些新功能旨在帮助开发者高速方便地创建和部署质量高且功能全的 Web 应用 ...

随机推荐

  1. Sql Server 按日统计产量

    碰到一个这样的需求,需要查询每天的产量,直接 group 是可以分出不同天的产量,但是如果当天没有生产,就会少一条那一天的记录,而不是那一天显示产量为0,这样不方便前端显示曲线. 于是找到下面的办法, ...

  2. oeasy教您玩转vim - 20 - 显示标尺

    显示标尺 回忆上节课内容 定义标记 a ma 删除标记 a :delm a 跳转到标记 a 'a `a 跳到 a 对应的行和列 'a 跳到 a 对应的行 查看所有标记 :marks 各种标记类型 '' ...

  3. 为什么StampedLock会导致CPU100%?

    StampedLock 是 Java 8 引入的一种高级的锁机制,它位于 java.util.concurrent.locks 包中.与传统的读写锁(ReentrantReadWriteLock)相比 ...

  4. ABC347

    A link 很简单 遍历,判断模\(k\)是否为\(0\),如果为\(0\),输出\(a_i/k\). 点击查看代码 #include<bits/stdc++.h> using name ...

  5. mysql中的隐式转换导致全表扫描

    mysql中的隐式转换导致全表扫描 在mysql查询中,当查询条件左右两侧类型不匹配的时候会发生隐式转换,可能导致查询无法使用索引.下面分析两种隐式转换的情况 看表结构 phone为 int类型,na ...

  6. Jmeter函数助手15-FiletoString

    FiletoString函数用于一次读取整个文件值. 输入文件的全路径:填入文件路径 File encoding if not the platform default (opt):读取文件的编码格式 ...

  7. Mysql查询几天前或几天后的日期

    查询 当天±天数 后的日期."-14"表示14天前的日期,"14"表示14天后的日期 NOW()精确到时分秒,CURDATE()只精确到天 #查询今天 1.se ...

  8. ThinkPHP6支持金仓数据库(Kingbase)解决无法使用模型查询问题

    参考了很多前人的文章,最后只支持Db::query原生查询,不支持thinkphp数据模型方法,这在实际项目中是很难接受的,特分享出解决方案. 先按照流程配置如下: 1.准备工作 首先确认PHP支持金 ...

  9. 【RabbitMQ】12 日志监控 & 消息追踪

    一.日志和监控 RabbitMQ日志存放目录 [root@localhost ~]# ll /var/log/rabbitmq/ 总用量 176 -rw-r-----. 1 rabbitmq rabb ...

  10. vue之element图标库使用与第三方阿里云图标库使用

    1.背景 2.element图标库使用 假设要做一个如下效果 代码如下: <!-- 输入框--> <el-form label-width="0px" class ...