問題タブ [nameof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
11555 参照

c# - ASP.NET MVC Url.Action で C# nameof() を使用する方法

おすすめの新しい使い方はありますか

コントローラー名のASP.NET MVCの式?

nameof(HomeController)が"HomeController"に変換され、MVC が必要とするのは"Home"だけであるため、明らかに機能しません。

0 投票する
5 に答える
11348 参照

c# - nameof(this) を処理してクラス名を報告する方法

次の C#6 コードを使用したい

...そして、次の出力を取得します。

ジョー

次の試み

nameofに適用できないため、失敗しますthis。この問題の回避策はありますか?

編集。私が取り組んでいるシナリオでは、2 つの参照が同じSelfオブジェクトを指していないことが保証されています。

0 投票する
2 に答える
6452 参照

c# - .NET 4.5.3 でプロパティの変更を通知するために、CallerMemberNameAttribute の代わりに nameof 演算子を使用する利点はありますか?

.NET 4.5.3 の出現により、WPF 開発者は、プロパティの変更をINotifyPropertyChangedインターフェイスに通知する 3 つ (またはそれ以上) の方法を使用できるようになりました。基本的に、私の質問は、.NET 4.5 以降で導入された 2 つの方法のどちらが、プロパティの変更を通知するより効率的な方法であり、WPF で使用する場合にどちらの方法にも利点があるかどうかです。

バックグラウンド

このテーマにあまり詳しくない人のために、主な 3 つの方法を次に示します。1 つ目は、単純に文字列を渡す元の、よりエラーが発生しやすい方法です。

2 番目の方法は .NET 4.5 で導入されました。CallerMemberNameAttribute:_

3 番目の最新の方法は、.NET 4.5.3 の一部として C#6.0 に導入されました (または間もなく導入される予定です)。nameofオペレーター: _

私自身の推測では、単純に文字列を渡す元の、よりエラーが発生しやすい方法が最も効率的であると思います。他の 2 つの方法は何らかの形式のリフレクションを使用しているとしか想像できないからです。ただし、他の 2 つの方法のどちらがより効率的で、WPF コンテキストでのCallerMemberNameAttribute属性と演算子の使用に実際に違いがあるかどうかを知りたいと思っています。nameof

0 投票する
1 に答える
3165 参照

c# - switch ステートメントで nameof 式を使用することは可能ですか?

新しいC# 6.0nameofは、次のPropertyChangedようなものを使用してプロパティの変更を伝達するパターンに優れています。

プロパティの変更をリッスンするときは、これを使用します(はい、ハードコードされた文字列が醜い場合でも):

新しい nameof 式を使用すると、このコードはコンパイル/動作しますか?

0 投票する
5 に答える
29760 参照

c# - .net フレームワーク 4 の nameof 式

「nameof」式は、Visual Studio 2015 および c# 6 で導入されました

nameof (C# および Visual Basic リファレンス)

.net Framework 4.

0 投票する
17 に答える
189593 参照

c# - nameof の目的は何ですか?

バージョン 6.0 には の新機能が追加nameofされましたが、変数名を取得してコンパイル時に文字列に変更するだけなので、その目的がわかりません。

使用時に何らかの目的があるのではないかと思いましたが、使用<T>しようとすると、使用されているタイプの代わりにnameof(T)a が出力されます。T

目的について何か考えはありますか?

0 投票する
2 に答える
7949 参照

c# - ReSharper は、「caller info 属性を持つパラメーターに渡された明示的な引数」で nameof の使用を強調しています

次のように、nameof 関数を使用してプロパティ名を文字列として取得しています。

ReSharper はこれを警告で強調します。

呼び出し元情報属性を持つパラメーターに渡される明示的な引数

コードは機能します。上記の警告が心配する必要があるかどうか疑問に思っていました。

0 投票する
2 に答える
40933 参照

c# - Visual Studio 2015 で言語バージョンを変更する方法

Visual Studio 2015 の C# プロジェクトで演算子を使用したいのですnameofが、コンパイラから次のメッセージが表示されます。

'nameof operator' 機能は C# 5 では使用できません。言語バージョン 6 以降を使用してください。

Visual Studio 2015 から C# 言語バージョンを変更する方法を知りたいです。