
Microsoftは2023年5月2日(米国時間)、「.NET Upgrade Assistant」の新バージョンをリリースしたと発表した。.NET Upgrade Assistantは.NET Framework上で実行されているアプリケーションをXamarin FormsやUWP(Universal Windows Platform)などの古いプラットフォームから最新の.NETにアップグレードし、移行をサポートするツールだ。 2023年2月にリリースされたVisual Studioの拡張機能に続き、.NET Upgrade Assistantの新バージョンでは多くの改善と新機能が追加された。 新バージョンの主要な改善点 .NET 8への対応 以前のUpgrade Assistantのバージョンでは.NET Coreやそれ以降のバージョンから.NET 6、7、8へのアップグレードを選択し
この記事では、.NET Framework から .NET (旧称 .NET Core) にコードを移植する際に考慮すべき事項の概要について説明します。 .NET Framework から .NET への移植は、多くのプロジェクトで比較的簡単です。 プロジェクトの複雑さは、プロジェクト ファイルの最初の移行後に実行する必要がある作業量を決定します。 ライブラリ、コンソール アプリ、デスクトップ アプリなど、.NET でアプリ モデルを使用できるプロジェクトでは、通常、ほとんど変更は必要とされません。 ASP.NET から ASP.NET Core への移行など、新しいアプリ モデルを必要とするプロジェクトには、より多くの作業が必要です。 古いアプリ モデルの多くのパターンには、変換時に使用できる同等のパターンがあります。 Windows デスクトップ テクノロジ .NET Framewor
.NET は、さまざまな種類のアプリケーションを構築するための無料のクロスプラットフォームのオープンソース開発者プラットフォームです。 複数の言語で記述されたプログラムを実行でき、C# が最も一般的です。 これは、多くの大規模なアプリによって運用環境で使用される高パフォーマンスランタイムに依存しています。 .NET をダウンロードして最初のアプリの作成を開始する方法については、「作業の開始」を参照してください。 .NET プラットフォームは、生産性、パフォーマンス、セキュリティ、信頼性を提供するように設計されています。 ガベージ コレクター (GC) を介した自動メモリ管理を提供します。 これは、GC と厳密な言語コンパイラを使用するため、タイプ セーフでメモリ セーフです。 async /およびawaitプリミティブを介してTaskを提供します。 これには、広範な機能を備え、複数のオペレ
このブラウザーはサポートされなくなりました。 Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。 .NET 向け Microsoft Learn .NET C#、F#、Visual Basic などのプログラミング言語を使用して、複数のプラットフォームにまたがるアプリを構築する方法をご確認ください。 Windows、Linux、macOS でサポートされており、.NET を使用して次のプロジェクトの開発を今すぐ開始することができます。 すべての .NET パスを参照する .NET の概要 .NET は、さまざまな種類のアプリケーションをビルドするための、無料のクロス プラットフォームかつオープン ソースの開発者向けプラットフォームです。 .NET では、複数の言語、エディター、およびライブラリを使用して、
アプリケーションは、実行中に発生したエラーを一貫した方法で処理できる必要があります。 .NET には、アプリケーションにエラーを一様な方法で通知するためのモデルが用意されています。.NET 操作は、例外をスローすることによってエラーを示します。 例外 例外は、実行中のプログラムで発生したエラー状態または予期しない動作です。 例外は、コードまたは呼び出したコード (共有ライブラリなど)、使用できないオペレーティング システム リソース、ランタイムで発生する予期しない条件 (検証できないコードなど) が原因でスローされる可能性があります。 アプリケーションは、これらの条件の一部から回復できますが、他の条件からは回復できません。 ほとんどのアプリケーション例外から復旧できますが、ほとんどのランタイム例外から復旧することはできません。 .NET では、例外は System.Exception クラ
リンカーは、増分リンク情報に .ilk データベース ファイルを作成して使用します。 解説 増分リンクを行う場合、LINK は最初の増分リンク中に作成した .ilk ステータス ファイルを更新します。 このファイルは、ターゲット EXE または DLL ファイルと同じベース名を持ち、拡張子 .ilk。 その後の増分リンク中に、LINK によって .ilk ファイルが更新されます。 .ilk ファイルがない場合、LINK はフル リンクを実行し、新しい.ilk ファイルを作成します。 .ilk ファイルが使用できない場合、LINK は非増分リンクを実行します。 インクリメンタル リンクの詳細については、 /INCREMENTAL (インクリメンタル リンク) リンカー オプションを参照してください。 ファイルの名前と場所を指定する方法については、「 /ILK (増分データベース ファイルの名
あなたにとって重要なトピックや同僚の最新情報を入手しましょう最新の洞察とトレンドに関する最新情報を即座に受け取りましょう。 継続的な学習のために、無料のリソースに手軽にアクセスしましょうミニブック、トランスクリプト付き動画、およびトレーニング教材。 記事を保存して、いつでも読むことができます記事をブックマークして、準備ができたらいつでも読めます。
C#標準化のオープンソース化は、作業を容易にすることを目的に.NET Foundationの下で行われており、言語の革新や機能の設計から実装、標準化まで、すべてがオープンソース化された。オープン化によって、言語設計チーム、コンパイラの実装チーム、標準化委員会の3者間でのやり取りが容易になるとともに、すべての会話は公開される。 ECMAのC#標準化委員会であるTC-49-TG2が、C#の標準案作成を担っており、標準化作業の状況はC# 6の標準テキストで確認できる。具体的な作業の内容は、dotnet/csharplangリポジトリでホストされているドラフト仕様と、現在のC# 5標準テキストとのマージで、C# 7の機能も組み込まれる。 C#に関連するリポジトリとしては、C#の言語設計と進化の取り組みが含まれる前述のdotnet/csharplangのほか、コンパイラと関連ツール実装用のdotne
次のセクションのトピックを表示するには、左側のナビゲーションにある目次をご使用ください。 Visual Basic の概念に関するトピック Visual Basic プログラミングを理解するのに役立つ情報が記載されています。 Microsoft Forms の概念に関するトピック UserForms とコントロールについて、および、Visual Basic を使用してそれらをプログラミングする方法について説明します。 Visual Basic の操作手順のトピック 役に立つ一般的な操作手順 (オブジェクト ブラウザーの使用方法や Visual Basic 環境オプションの設定方法など) について説明します。 Visual Basic 言語リファレンス Visual Basic 言語 (すべてのメソッド、プロパティ、ステートメント、関数、演算子、およびオブジェクト) に関するドキュメントが用
プロパティは、データ フィールドの値の読み取り、書き込み、または計算を行う、柔軟な機構が用意されたメンバーです。 プロパティはパブリック データ メンバーとして表示されますが、アクセサーと呼ばれる特別なメソッドとして実装されます。 この機能によって、データの安全性と柔軟性を高めながら、呼び出し元が簡単にデータにアクセスできます。 プロパティの構文は、フィールドを自然に拡張したものです。 フィールドで格納場所を定義します。 public class Person { public string? FirstName; // Omitted for brevity. } 自動的に実装されるプロパティ プロパティの定義には、プロパティの値を取得する get アクセサーとプロパティに値を割り当てる set アクセサーの宣言が含まれます。 public class Person { public s
public ref class STAThreadAttribute sealed : Attribute [System.AttributeUsage(System.AttributeTargets.Method)] public sealed class STAThreadAttribute : Attribute [System.AttributeUsage(System.AttributeTargets.Method)] [System.Runtime.InteropServices.ComVisible(true)] public sealed class STAThreadAttribute : Attribute [<System.AttributeUsage(System.AttributeTargets.Method)>] type STAThreadAttribute
派生クラスで基本クラスと同じシグネチャのメソッドを実装することが出来ますが、このときnewを使うかoverrideを使うかで動きが変わってきます。 結論を先に書いておくと・・・ newはフィールドの型に応じて呼び出しメソッドが決められる。 overrideはインスタンスの型に応じて呼び出しメソッドが決められる。 では、細かく見ていきましょう。 基本クラス(Base)とその派生クラス(Hoge)を作って、それぞれの動きを確認してみます。 まず、こんな感じで実装。 // 基本クラス class Base { public void CallNew() { Console.WriteLine("Base::CallNew"); } public virtual void CallOverride() { Console.WriteLine("Base::CallOverride"); } } /
C# 言語は、異なるライブラリ内の 基底 クラスと派生クラスの間のバージョン管理が進化し、下位互換性を維持できるように設計されています。 つまり、たとえば、派生クラスのメンバーと同じ名前の基底 クラス に新しいメンバーを導入することは、C# で完全にサポートされており、予期しない動作には至りません。 また、クラスは、メソッドが継承されたメソッドをオーバーライドすることを意図しているかどうか、またはメソッドが同様の名前の継承メソッドを非表示にする新しいメソッドであるかどうかを明示的に指定する必要があることを意味します。 C# では、派生クラスには基底クラス メソッドと同じ名前のメソッドを含めることができます。 派生クラスのメソッドの前に 新しい キーワードまたは オーバーライド キーワードがない場合、コンパイラは警告を発行し、メソッドは new キーワードが存在するかのように動作します。 派
コード書けばすぐわかる事なんですが is 演算子の挙動の話です。 is 演算子は複数の型で true になる可能性があります。 親子関係がある型で厳密に型を判定したい場合、GetType() と typeof を使います。 // こんなクラスがあったとして、、 public class BaseClass { } public class DerivedClass_1 : BaseClass { } public class DerivedClass_2 : BaseClass { } // こんなコードを書いたとすると結果がコメントのようになります static void Main(string[] args) { BaseClass test = new DerivedClass_1(); // is演算子による型判定 Console.WriteLine("test is BaseCl
DataGridView コントロール内の各セルには、テキストの書式設定、背景色、前景色、フォントなど、独自のスタイルを持たせることができます。 ただし、一般的には、複数のセルが特定のスタイル特性を共有します。 スタイルを共有するセルのグループには、特定の行または列内のすべてのセル、特定の値を含むすべてのセル、またはコントロール内のすべてのセルが含まれます。 このようなグループは重複しているため、各セルは複数の場所からスタイル情報を取得することができます。 たとえば、DataGridView コントロール内のすべてのセルに同じフォントを使用し、通貨列内のセルにのみ通貨の書式設定を使用し、負の数の通貨セルにのみ赤い前景色を使用することができます。 DataGridViewCellStyle クラス DataGridViewCellStyle クラスには、ビジュアル スタイルに関連する次のプロ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く