問題タブ [iconvertible]

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

linq - 拡張方法:GUIDでも動作させる方法

プロジェクト内のオブジェクトを変換するために、この拡張メソッドを使用しています。しかし、インターフェイスをGUID実装していないため変換できませんが、変換には常に使用する必要がありますが、このメソッドを使用してオブジェクトを に変換できるようにしたいと考えています。また、どのように柔軟に作業できるようにするかについても考えています。IConvertiblenew Guid(fooobject)GUIDGUID

延長方法は

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

c# - IConvertibleエラーを伴う暗黙の演算子とSqlParameter.Valueへの割り当て

私はInt32としてクラスメンバータイプを持っていますが、要件は、このメンバーの.ToString()メソッドがInt32の特別にフォーマットされたバージョンを返す必要があることです。そこで、単純な値の代入セマンティクスを保持する暗黙の演算子を使用して構造体を作成し、.ToString()..をオーバーライドできます。

通常の使用法では、期待どおりに機能します。ただし、SqlParameter.Valueメンバーに割り当てると、「...useIConvertible...」エラーが発生します...

デバッグ中、構造体の.ToString()メソッドがSqlParameter.Value割り当てで呼び出されるように見えます。では、質問1は、基になるInt32値を割り当てる代わりに、なぜそれを行うのかということです。

関連する質問#2は、エラーがSqlCommand.ExecuteReader()メソッドで生成されるため、最初の割り当てでエラーが生成されないのはなぜですか?

私が書いたコードのあらゆる側面を自由に批評してください、しかし私は私の質問に対する良い答えを得ることを本当に望んでいます。

(追加するために編集)私は私の問題を言い換えます...

Int32を正確に模倣する値データ型を作成する必要があります(.ToString()の例外を使用)。これにより、ボックス化されると、構造体ではなくInt32値がボックス化されます。

これは可能ですか?

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

sql - コードにIConvertibleオブジェクトを実装するにはどうすればよいですか?

保存ボタンをクリックしてデータグリッド列にすべてのデータを入力し終えると、このエラーが返されます。

エラー:system.data.dllでタイプ「System.InvalidCastException」の未処理の例外が発生しました

追加情報:オブジェクトはIConvertibleを実装する必要があります。

オブジェクトにIConvertibleを実装するにはどうすればよいですか?

0 投票する
0 に答える
346 参照

.net - タイプ 'System.String[]' のオブジェクトをタイプ 'System.IConvertible' にキャストする方法

配列からの値をラベルに表示する方法を見つけることができないようです..

例外を与える

これに対する良い答えが見つかりません。また、Windowsフォームアプリで作業しているため、IConvertibleも継承できません...

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

c# - タイプまたはネームスペース名「IConvertible」が見つかりませんでした

カスタム変換用に IConvertible を実装しようとしています。.NET ポータブルを使用していますが、そこでは利用できないようです。しかし、MSDN のドキュメントには次のように書かれています。

ポータブル クラス ライブラリ
サポート対象: ポータブル クラス ライブラリ

これも表示されるので少し心配です:

この API は CLS に準拠していません。

これが解決できない理由でしょうか?ドキュメントによると、これはSystem名前空間の一部である必要があります。インターフェイスを構造体に実装しようとしています。

次の行の何か:

本当に小さな何かを逃しているような気がします。
詳細: .NET Framework 4.5 と Windows 8 をターゲットにしています。

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

c# - listviewitem を System.IConvertible にキャストする

次の問題があります...いくつかの番号(ID)を含むリストビューを取得しました。ここで、典型的な SQL 検索 (OR、AND) を実行できるように、いくつかのリストボックスでそれらを配置したいと考えています。したがって、リストビューは次のように埋められます。

したがって、リストビューでは常に値が選択されています。検索を実行したい場合は、次のコードを使用して、最初に要素をリストに入力します。

今、私は次の例外を受け取ります:

"System.Windows.Forms.ListViewItem" 型のオブジェクトは、"System.IConvertible" 型に変換できません。

この問題を解決するにはどうすればよいですか?

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

c# - Employee および ProductionWorker クラス、クラスから情報を取得

タイトルがこれに合っているかどうかは完全にはわかりません。これを行う方法を示すビデオがあると思われますが、私の人生では、ピアソンのWebサイトから生徒のファイルをダウンロードする方法がわかりません。以下は私が取り組んでいる問題です。

Employee クラスと ProductionWorker クラス

次のデータのプロパティを持つ Employee クラスを作成します。

  • 従業員名
  • 従業員番号

次に、Employee クラスから派生した ProductionWorker という名前のクラスを作成します。ProudctionWorker クラスには、次のデータを保持するためのプロパティが必要です。

  • シフト番号 (1、2、3 などの整数)
  • 時給

勤務日は、昼と夜の 2 シフトに分かれています。Shift プロパティは、従業員が勤務するシフトを表す整数値を保持します。日勤が1番、夜勤が2番です。

ProductionWorker クラスのオブジェクトを作成し、ユーザーがオブジェクトの各プロパティのデータを入力できるようにするアプリケーションを作成します。オブジェクトのプロパティを取得し、その値を表示します。

これが私が取り組んでいるコードです:

コード自体はエラーを表示していませんが、実行しようとすると次のようになります。

文字列 EmpShift がそこにあるのは、シフトコードを操作する方法がわからなかったからです。多かれ少なかれ、それを指で示すまでプレースホルダーとして使用しています。問題を解決する方法がわかりません。うまくいけば、小さな間違いです。

commets の助けのおかげで、最初に抱えていた問題を修正できましたが、今では最後のメッセージ ボックスに問題があります。私が入力した情報は、名前に Glitter、ID 番号に 12、シフトに 1、支払いに 12 です。その表示内容は次のとおりです。

名前 System.Windows.Forms.TextBox, Text: GlitterIDNumber 0Hourly rate System.Windows.Forms.TextBox, Text: Shift SystemWindowsForm.TextBox, Text:

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

c# - 戻り値の型がジェネリック インターフェイスの場合、オブジェクトをジェネリック戻り値の型にキャストする方法は?

データベースからさまざまなデータを取得し、それを使用して要求された型のオブジェクトを構築することになっている、驚くほど醜いメソッドがあります。目標は、このメソッドを含むクラスから派生するクラスが比較的クリーンになるように、さまざまな醜さを 1 つの場所にまとめることです。

タイプがnull可能であっても、単一のオブジェクトを返すことになっている場合に問題はありません。

残念ながら、目的の戻り値の型が IList で、List を返したい場合があります。

T のインスタンスではなくオブジェクトであるため、rVal を返すことはできません。しかし、私の changeType() 関数は失敗し、エラーが発生します。

System.InvalidCastException: オブジェクトは IConvertible を実装する必要があります。

したがって、戻り値の型が IList であるジェネリック メソッドがあり、List であるオブジェクトがありますが、それへの参照は Object 型です。関数から返すことができるようにキャストするにはどうすればよいですか?

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

excel - LinqToExcel - オブジェクトにつながる InvalidCastException は Iconvertible エラーを実装する必要があります

次のコードを使用して、LinqToExcel で Excel ファイルをクエリしています。

ランタイム デバッガーを見ると、プロパティ変数の「結果ビュー」を見ていると、「InvalidCastException」が表示されます。したがって、クラス定義で何かおかしなことが起こっていると思います。また、クラスのすべてのメンバーを Excel ファイルにマップする必要はなく、適切と思われるメンバーのみをマップする必要があると想定しています。
したがって、クラス定義も次のとおりです。

GitHub の linqToExcel のソース コードへのリンクは次のとおり です。

この問題の原因となるような、私が見逃しているものはありますか? これらのエラーを解決するためにどこを見ればよいか、または何をすべきかについてのアイデアはありますか?