問題タブ [attributes]

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

c# - 廃止された属性により、プロパティが XmlSerialization によって無視される

XML にシリアル化されたいくつかのオブジェクトをリファクタリングしていますが、下位互換性のためにいくつかのプロパティを保持する必要があります。古いオブジェクトを新しいオブジェクトに変換し、廃止されたプロパティを null にするメソッドがあります。この属性を使用して、Obsolete他の開発者にこのプロパティを使用しないように伝えたいのですが、XmlSerializer.

類似コード:

回避策に関するアイデアはありますか?私の最善の解決策は、XML コメントに obsolete を書くことです...

更新: .NET 2.0 を使用しています

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

python - Python 関数の属性 - 使用と乱用

この機能を知っている人はあまりいませんが、Python の関数 (およびメソッド) は属性を持つことができます。見よ:

Python でこの機能を使用したり悪用したりする可能性は何ですか? 私が知っている良い使い方の 1 つは、PLYが構文規則をメソッドに関連付けるために docstring を使用することです。しかし、カスタム属性はどうですか? それらを使用する正当な理由はありますか?

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

python - Python属性をチェックするためのget()のようなメソッド

辞書がdictあり、チェックしたい場合dict['key']は、ブロックで行うかtry(bleh!)、デフォルト値としてget()メソッドを使用できます。False

同じことをしたいのですがobject.attribute。つまり、False設定されていない場合は返すオブジェクトがすでにありますが、次のようなエラーが発生します。

AttributeError:'bool'オブジェクトに属性'attribute'がありません

0 投票する
11 に答える
91321 参照

c# - DisplayNameAttribute のローカライズ

PropertyGrid に表示されるプロパティ名をローカライズする方法を探しています。プロパティの名前は、DisplayNameAttribute 属性を使用して「オーバーライド」できます。残念ながら、属性には非定数式を含めることはできません。したがって、次のような厳密に型指定されたリソースは使用できません。

私は周りを見回して、リソースを使用できるように DisplayNameAttribute から継承するといういくつかの提案を見つけました。私は次のようなコードになってしまいます:

ただし、強く型付けされたリソースの利点を失いますが、これは間違いなく良いことではありません。それから、私が探しているものかもしれないDisplayNameResourceAttributeに出会いました。しかし、それは Microsoft.VisualStudio.Modeling.Design 名前空間にあるはずであり、この名前空間に追加するはずの参照が見つかりません。

DisplayName のローカリゼーションをうまく実現する簡単な方法があるかどうかは誰でも知っていますか? または、MicrosoftがVisual Studioに使用していると思われるものを使用する方法がある場合は?

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

.net - PropertyGrid に特定のプロパティのカスタム ダイアログを表示させるにはどうすればよいですか?

getter と setter の両方を持つ文字列プロパティを持つクラスがありますが、これはしばしば非常に長く、PropertyGrid が文字列値を切り捨てます。PropertyGrid に省略記号を表示させ、プロパティを簡単に編集できるように複数行のテキスト ボックスを含むダイアログを起動するにはどうすればよいですか? おそらくプロパティに何らかの属性を設定する必要があることはわかっていますが、どの属性をどのように設定するのでしょうか? 私のダイアログは特別なデザイナー インターフェイスを実装する必要がありますか?

更新: これはおそらく私の質問に対する回答ですが、検索しても見つかりませんでした。私の質問はより一般的であり、その答えはあらゆるタイプのカスタム エディターの構築に使用できます。

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

.net - IronPythonで定義されたメソッドとタイプに属性を追加するにはどうすればよいですか?

IronPythonは属性をサポートしていないので、IronPythonクラスを属性で、おそらくリフレクションで装飾する別の方法があるかどうか疑問に思っています。

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

ruby - ruby から soap4r を使用して SOAP メッセージを生成するときに、ヘッダーに name.value を追加するにはどうすればよいですか?

wsdlからドライバーを作成しました

リクエストを呼び出すときに、ヘッダーに要素を含めたい、つまり、次のようなものを表示したい:

REPLACE_WITH_ACTUAL 何とか何とか何とか

しかし、周りを見渡すと、誰もが SOAP::Header::SimpleHandler をサブクラス化し、インスタンスを driver.headerhandler に注入することについて話しています。

ただし、それを行うと、ネストされたヘッダー、つまり REPLACE_WITH_ACTUAL になります。

したがって、既存のヘッダーハンドラーに要素を追加するだけの方法が必要なので、次のようなことができます

driver.headerhandler.AddElement("セッション", "123")

しかし、私はそれを行う方法を見つけることができません。私も次のようなことを試しました

driver.headerhandler["session"]="123" などのトリックですが、これを機能させる方法が見つかりません。

driver.headerhandler.methods を見ると、明確なメカニズムがわかりません。

これを行う方法へのポインタを本当に感謝します。

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

.net - .NET でのこの属性の意味は何ですか

この属性の意味は何ですか?