はじめに
これは、Visual Basic Advent Calendar 2022の10日目の記事となります。
Blazor プロジェクトで、VB.NETを使う方法を2点を紹介します。
C#と組み合わせ
同じ Blazor プロジェクトで C# と VB.NET を組み合わせる方式となります。
VB.NET用のクラスライブラリーをプロジェクトに追加します。
BlazorCsharpVBプロジェクトで右クリックメニューから追加のプロジェクト参照で、「VBNETClassLibrary」を選択して、OKボタンをクリックします。
usingの指定が有効になります。
@using VBNETClassLibrary
@page "/employees"
実行
この方法は、VB.NETで作成したクラスライブラリーをC#に移植する必要なくそのまま使用できる利点があります。
VBそのまま
先日、VB.NETでレコード型を使えるプロジェクトを紹介しましたが、その方のGitHubの他のリポジトリを見ていたところ、「BlazorVB」というリポジトリを見つけました。
ソースコードだけを見たら、BlazorアプリをVBで作成していました。
実行
プロジェクトが少し古いので、.NET 5.0で作られています。
作られた当時は動作していたかも知れませんが、今だとメニューとかが表示されませんでした。
下記サイトの指摘でNavMenu.razor.g.vb
は更新されたようですが、今は動作しなかった。
今後
別ブログのコメントに作者の11月5日のコメントがあります。
If fact I didn’t dig deeper into Blazor, as I was busy developing Small Visual Basic (and other stuff) over the two past years, but I can start now, especially .NET 7 is about to release, and I expect Blazor to be mature enough now.
DeepL翻訳
実はこの2年間はSmall Visual Basicの開発で忙しかったので、Blazorを深く掘り下げていませんでしたが、今なら始められます。特に.NET 7がもうすぐリリースされますし、Blazorも十分に成熟していると期待しています。
ちゃんと動作するように改善されることを期待しましょう。
最後に
C#と組み合わせは問題なく使用できます。Blazorの仕組み的にプロジェクト参照ではなく、VB.NETで作成した「dll」を参照するだけでも動きそうな気がしますけどね。
BlazorVBは、作者の頑張りに期待します。