[解決済み] メソッドからAnonymous Typeを返す方法はありますか?
2023-08-21 06:02:58
質問
のようなメソッドを書くことができないのは知っています。
public var MyMethod()
{
return new{ Property1 = "test", Property2="test"};
}
それ以外でもできる
public object MyMethod()
{
return new{ Property1 = "test", Property2="test"}
}
が、2番目のオプションはやりたくありません。そうすると、リフレクションを使わなければならないからです。
なぜそうしたいのか。
今日、私は自分のaspxページ内に、結果としてデータテーブルを返すメソッドを持っています。 それを変更することはできません 私は、このデータテーブルを、私が作業したいプロパティを持つ匿名メソッドに変換しようとしていました。私はそれを行うためだけにクラスを作成したくなかったし、私は同じクエリを複数回実行する必要があるので、私は匿名の型を返すメソッドを作成することは良いアイデアだろうと思った。
どのように解決するのですか?
として返す。
System.Object
は
だけ
であり、これはメソッドから無名型を返すための唯一の方法です。 残念ながら、無名型はこの方法での使用を防ぐために特別に設計されているので、これを行うための他の方法はありません。
を返すのと同時に、いくつかのトリックを行うことができます。
Object
を返すのと同時に行うことで、それに近づけることができます。 この回避策に興味がある方は、以下をお読みください。
メソッドから無名型を返せない?本当に?
.
免責事項です。 私がリンクした記事が回避策を示しているにもかかわらず、それを行うのが良いアイデアであることを意味するわけではありません。 通常の型を作成する方が安全で理解しやすい場合は、この方法を使用することを強くお勧めします。
関連
-
[解決済み】「未割り当てのローカル変数を使用」とはどういう意味ですか?
-
[解決済み】文字列が有効な DateTime " format dd/MM/yyyy " として認識されなかった。
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] C#で同期メソッドから非同期メソッドを呼び出すには?
-
[解決済み] ファイルが使用中であるかどうかを確認する方法はありますか?
-
[解決済み] Typeから新しいオブジェクトのインスタンスを作成する方法
-
[解決済み] 汎用クラスやメソッドのメンバからTの型を取得する方法
-
[解決済み] 戻り値のないFuncデリゲート
-
[解決済み] C#でジェネリックメソッドからNULLを返すにはどうしたらいいですか?
-
[解決済み] X回繰り返される文字列を簡単に返す方法はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み】C#で四捨五入する方法
-
[解決済み】文字列が有効な DateTime " format dd/MM/yyyy " として認識されなかった。
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】ファイルへの読み書きの際に共有違反のIOExceptionが発生する C#
-
[解決済み】 C# 条件演算子エラー 代入、call、increment、decrement、await、new object 式のみ文として使用可能です。
-
[解決済み] 関数を終了するには?
-
[解決済み】匿名型の結果を返す?
-
[解決済み] System.ValueTupleとSystem.Tupleの違いは何ですか?
-
[解決済み] C#で無名型を返す