問題タブ [enums]

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 投票する
9 に答える
26889 参照

wcf - WCF Webサービスで列挙型を使用していますか?

いくつかの値が割り当てられている場合、または列挙型がFlags属性でマークされている場合、サーバーとクライアント間で不一致が発生する可能性があるため、列挙型は悪であり、Webサービスで使用すべきではないと言う人がいます。彼らはまた、列挙型を公開するWebサービスは維持するのが難しいと言いましたが、実際に実行可能な議論をすることはできませんでした。では、あなたの経験から、WCF Webサービスで列挙型を使用することの長所と短所は何ですか?

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

c# - チェックボックスをフラグ列挙の個々のビットに双方向にバインドするにはどうすればよいですか?

優れた WPF バインディング チャレンジが好きな人向け:

フラグ列挙の個々のビットに a をバインドするほぼ機能的な例があります (元の MSDN 投稿のCheckBoxIan Oakes に感謝します)。ただし問題は、バインドが一方向 (UI から へ、その逆ではない) であるかのように動作することです。したがって、事実上は初期化されませんが、切り替えられた場合、データ ソースは正しく更新されます。Attached は、ビットベースのバインディングを有効にするためにいくつかの添付依存関係プロパティを定義するクラスです。私が気付いたのは、強制的に変更しても、ValueChanged が呼び出されないことです。DataContextCheckBoxDataContext

私が試したこと:プロパティ定義の順序を変更する, ラベルとテキスト ボックスを使用しDataContextて が更新をバブルしていることを確認する, もっともらしいFrameworkMetadataPropertyOptions( AffectsRender, BindsTwoWayByDefault), 明示的に設定するBinding Mode=TwoWay, 壁に頭をぶつける, 競合の場合に変更ValuePropertyする.EnumValueProperty

提案やアイデアは非常に高く評価されます。あなたが提供できるものに感謝します!

列挙:

XAML の使用法:

クラス:

0 投票する
7 に答える
30631 参照

c# - 列挙型に文字列と等しいフィールドがあるかどうかを確認します

私は列挙型を持っています

そして、拡張子が前の列挙型にあるかどうかを確認したい FileInfo があります。私はできることを望んでいた

しかし、それはあまりにも素晴らしかったでしょう。何か案は?

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

actionscript-3 - AS3 / Flash / Flexの列挙型?

AS2 よりも AS3 について私が本当に気に入っていることの 1 つは、コンパイル時の型チェックがどれだけ多く追加されているかということです。ただし、利用可能な型チェックされた列挙構造がないという点で、やや不足しているようです。AS3 でカスタム列挙型を行うための良い (最善の/受け入れられた) 方法は何ですか?

0 投票する
6 に答える
6608 参照

database - ENUM データ型をサポートするデータベース システムとサポートしないデータベース システムはどれですか?

この質問に続いて、「データベースの列挙 - 長所と短所」、どのデータベース システムが列挙型データ型をサポートしているか、およびそれらがどのようにそれを行うかについて少し詳しく知りたいです (たとえば、内部に格納されているもの、制限は何か、クエリ構文の影響、インデックス作成の影響など)。

ユースケースまたは長所と短所についての議論は、他の質問で行う必要があります。

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

java - APIが進化するにつれて、「int列挙型」パターンとJava列挙型の共存を処理するための最良の方法は何ですか?

何年も前に(Javaがenumサポートを取得する前に)最初にリリースされたAPIを維持していて、列挙値を持つクラスをintとして定義するとします。

何年にもわたって、APIは進化し、Java 5固有の機能(生成されたインターフェースなど)を獲得してきました。これで、新しい列挙を追加しようとしています。

'old style' int-enumパターンには型安全性がなく、動作やデータを追加する可能性もありませんが、公開されて使用されています。APIのユーザーにとって、2つのスタイルの列挙を混在させることが一貫していないのではないかと心配しています。

私は3つの可能なアプローチを見ます:

  • 新しい列挙型(私の架空の例では)をあきらめて、クラスNutrientTypeのような一連のintとして定義します。VitaminType一貫性は得られますが、型安全性やその他の最新機能を利用していません。

  • 公開されたAPIで矛盾を抱えて生きることを決定します。そのままVitaminTypeにして、として追加NutrientTypeしますenum。aをとるメソッドはVitaminType、intをとると宣言されますが、aをとるメソッドは、intをとるとNutrientType宣言されます。

  • クラスを廃止しVitaminType、新しいVitaminType2列挙型を導入します。NutrientTypenewを列挙型として定義します。おめでとうございます。非推奨の型を削除できるようになるまでの今後2〜3年間、intとして使用し、それぞれの新しいバージョンを追加する
    すべてのメソッドの非推奨バージョンを処理します。また、非推奨の各メソッドとそれに対応するメソッドのテストを作成する必要があるため、QAの労力を増やしただけです。VitaminTypefoo(VitaminType2 v)foo(int v)foo(VitaminType2 v)

最善のアプローチは何ですか?

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

java - XMLBeansですべての列挙値を取得するにはどうすればよいですか?

Apache XMLBeansを使用して、XMLスキーマ定義ファイル(XSD)からJavaクラスとインターフェースを生成できます。また、ドメイン値を表すStringEnumAbstractBaseおよびStringEnumAbstractBase.Tableに基づいて列挙型を生成します。有効な値のみを入力する場合に便利です。ただし、これらすべての値を取得して、JCombobox、JTable、またはhtmlテーブルを生成したいと思います。

生成されたクラスからすべての列挙値を取得するためのXMLBeansAPI呼び出しはありますか?ある種のJavaリフレクションを利用できる唯一の選択肢はありますか?

ありがとう

0 投票する
3 に答える
1509 参照

c# - what's the runtime equivalent of c# 'bracketed' type cast

suppose I have an enum

then I can write

and it will work.

BUT if I try to do that at runtime, like

it will throw InvalidCastException.

So, is there something that I can invoke at runtime, and it will convert from int32 to enum, in the same way as if I wrote a cast as above?

0 投票する
6 に答える
3495 参照

c# - 列挙型には初期化されていない値が必要です。

列挙型に初期化されていない値を含める必要があるかどうかについて議論していました。例えば。我々は持っています

また

何もないはずではないと思いますが、初期化時に有効な値にデフォルト設定する必要があります。しかし、他の人は、None または NotSet である別の列挙型を持つことによって、ユニット化された状態の兆候があるべきだと考えました。

考え?

0 投票する
3 に答える
1377 参照

c# - 列挙型は整数、型、または両方の名前のみですか?

C# での列挙型の楽しみ。以前に定義したいくつかの Enum を格納するために作成された汎用リストを 1 つ取り、そこにいくつかの項目を追加します。foreach で反復GetEnumerator<T>()するか、元の列挙型以外の列挙型を指定して、何が起こるかを確認します。InvalidCastException またはそのようなものを期待していましたが、完全に機能します:)。

例として、単純なコンソール アプリケーションを使用して、Cars と Animals という 2 つの列挙型を作成してみましょう。

そして、メインメソッドでこれを行います:

これをコンソールに出力します:

なぜこうなった?私の最初の推測では、enum 自体は実際には Type ではなく、単なる int ですが、そうではありません。

Console.WriteLine(Animals.Tiger.GetType().FullName); 彼の完全修飾名を印刷します! では、なぜこれが?