Website初心者向けのサイトです。採用判断は私がします。基幹システムはすべて内製。そのため保守的な人はお断りします。開発に自信のある人はメッセください。給与が低いのが一般的ですが、独立系ソフトハウスより高い設定にしています。歳のコも活躍しています。残業はありませんが、残業が発生したら残業代は出します。コミュニティからは引退しました。(ローン地獄ともいう)。可愛い娘と息子と幸せな日々を送っています。ゴリラは飼っていません。以外の整数型しか扱うことができません。データベース周りのコードを書いていると、フィールドなどをベタに指定したくない場合があります。列挙体があればなぁ」などと思うことでしょう。触っていた頃、喉から手が出るほど欲しい機構でした。(DataSet)」を使います。狭義のデータベースである必要もなく、フィールドが表現できるのであれば使えます。型バージョンが使いたくてやまない場合。フィールドを並べたりするハズです。自分で格納する必要がある」これに尽きると思います。これを、常に正しく自動で格納するにはどうすれば良いのか考えてみました。リフレクションを使ってかなり異端な実装をします。Classこの実装ですと、使う直前に必ず「変数名と同じ文字列」が常に正しく格納されます。メンバになってしまうのが玉に瑕です。初期化を保証しなくて良い、手動で保証するのであれば、静的フィールドを使う方法もあります。詳しくは下記リンク先をご覧ください。(atmarkit.co.jp)まあ、「こんな方法を取るな」と言われればそれまでですが、定数のように決まりきった値を使いたい、変数名と同じである保証をしたい。使わない場面は一応あります。使うべきという意見が出ていますが、そういう場面でない時、です。コンポーネントの動的なヘッダのパターンがあって、その時は、式フィールドを使ったりしたのですが、正直欲しいと思いましたね。_)こんな劣悪な記事を参考にして、損をしている人が出ているようですので、追記します。有効な方法があります。使い、カスタム属性で文字列を拡張する方法。拡張メソッドでそれを取得するメソッドを定義すれば汎用的に使えるでしょう。ように自由かつ強力な拡張が可能な以下のような方法です。Classこんな風にメンバを定義します。同じようなイメージで使用できます。メソッドを用意して演算子をオーバーロードすると良いでしょう。めんどくさいので書きません。取得してそのまま格納とされるので中身も保証されると。違いもわかることでしょう。あのね、ホント空しいので何かそれっぽいこと書いておきたいんですよ。読みにくい(読まない...ことはないが)。使い方をしないんですけどね。中身は格納して決めるんじゃなくて、定数のように決まっていて欲しい。定数とは違って、定数名と中身は同一であって欲しいとか。確かにあると便利な場面はあります。ヘッダ代わりの式フィールドとかね。いうスタイルで使用できないですね。渡すのがあまりに面倒です。固定できるものじゃないですね。列挙体のようにコンパイル解決したいのが狙いですから。さん経緯はリンク先の方をご覧ください。メソッドは推奨されていないです。BLUEPIXYリンク先ざっと見ましたけど、どちらかというと、その後の話みたいでもう一つよく見えませんでした。要らぬちゃちゃを入れて不快に思われたのならすみません。Enum.ToStringで、実際に使っているサンプルがあり、推奨されないとは書いていませんが・なんか、MSDNのリンクが書けないですね。コメントの文字数制限かと思って分断して、削って素っ気なくなってしまいました。さん、コメントありがとうございます。要らぬちゃちゃを入れて不快に思われたのならすみません。いえ、不快には全然思っていないです。文章だとどうも素っ気無く見えてしまうようです。「使用しないでください」と表示されたかと思います。実際に使っているサンプルがあり、推奨されないとは書いていませんが・ここは、ちょっと誤解があるように思えます。ライブラリの使用例などのコードは、自動で生成されたものです。辻褄のあっていないものはたくさんあります。人が、結構フィードバックしていますよ。表示されたかと思います。2005」環境構築していないので気付きませんでした。変な話ではありますね。結局の処、インテリセンスが、推奨されないという根拠なワケですね。ご教授ありがとうございました。ライブラリの使用例などのコードは、自動で生成されたものです。>辻褄のあっていないものはたくさんあります。間違ったコードが書かれていることがあるというのは、わかります。自動で生成されたからと言って、それを理由にすぐさまそんなのは根拠にならないということにはならないと思います。使ってフィールド名を(暗黙のToStringで)表示していますが、それは、もちろん、自動生成されたからではなくて、そのような意図(フィールド名が文字列要求されたときにはその名前を返すということのテスト)をもってテスト生成されたということですよね。属性関係を危惧してのことだと思います。実装が変わればできなくなる可能性もあります。今現在、すでにインテリセンス上では「使用するな」とまで言われているわけですから。避けたいですし、何より、列挙体本来の使い方ではないので、わかりにくいですね。少なくとも、リフレクションを使った方法よりか推奨されないと考えています。こちらの記事では、これのみを紹介しました。間違っていることさえあります。内でも辻褄が合っていないことは多々あります。関係とファイナライザの記述も、過去に辻褄があっていませんでした。BLUEPIXYToString("G")は、どうでしょう?この場合、列挙型エントリを文字列として(表示できる場合には)作成するので、意味としてははっきりしていると思います。"を読んでみて下さい。この場合、これが、辻褄が合わないなんとかかんとかというなら、このエントリ自体おかしいと思います。極めるための基礎と実用テクニック」という一般向けの本の中でToStringメソッドで列挙体の列挙子を取得できると書いてます。BLUEPIXY>今現在、すでにインテリセンス上では「使用するな」とまで言われているわけですから。使用するようにとコンパイラで警告がでることを考えると、コンパイラで警告がでないインテリセンスのメッセージは(辻褄が合わないと言うより)(推奨や警告ではなく)単なるアドバイスに過ぎないと思います。中博俊C#のコンパイラはライブラリに基本的に踏み込みませんから、それはちがうでしょう。BLUEPIXYそうなんですか、訂正ありがとうございます。MVPな人「じゃんぬねっと」さんに対して言う言葉じゃないね。それと、こちらのサイト(わんくま同盟さん)は、その中博俊さんとじゃんぬねっとさんによって運営されていることをご存知ないのかしら?よりによって、対抗馬で中博俊さんを出してくること自体がなんだかな。会話もかみ合ってないし。BLUEPIXIさんって、OKWebでも何かとずれてると思っていたけど、こんなところでもずれてるんですね。BLUEPIXYずれたことを書くのは本意ではないので、一応一連の私の書込について説明しておくと、私の一連の書込は、記事が云々ということではなくて、「ToStringではだめな根拠は何なの?」ということです。記事と関連性がないずれたコメントだと思われたならすみませんです。MVPがどうのこうのというのは、知らなくて言ってるのではなくて、MVPが根拠になるの?ということです。一連の書込は「推奨されない」根拠がインテリセンスのメッセージによるなら、そういう開発環境を使っていない人はどうしてそれを知ることができるのかという疑問が根底にあります。名無し>MVPがどうのこうのというのは、知らなくて言ってるのではなくて、MVPが根拠になるの?ということです。極めるための基礎と実用テクニック」という一般向けの本の中でToStringメソッドで列挙体の列挙子を取得できると書いてます。MVPがどうこう関係ないの反論の意味だったらそう書けばいいのに。問題なのはフィードバックしてるという事実じゃないの?別にMVPをかばう意図はないけどさ。nohttp://msdn.microsoft.com/ja-jp/library/16c1xs4z%28VS.80%29.aspx情報が古くなりつつあるため、この記事を補完する情報の掲載を求めます。みたらしはじめまして。オーバーロードだけではないでしょうか。このメソッドは、互換性のために残されています。ツールチップにも「使用しないでください/このメソッドのオーバーロードは今後使用しません」と出ます。他のオーバーロードについては、MSDNにも記載がなければ、ツールチップにも警告が出ていません。選択したときには確かに警告が出ていますが、これはデフォルトでツールチップに表示されるのが、よりにもよってこのオーバーロードだからなのでは。renjiみたらしさんに同感です。IFormatProvider)このインテリセンスに限り[使用しないでください]と表示されていますので、ほかのケースであれば、良いと考えております。