C#にて、データを取得する処理を行う自作のDLLライブラリA,Bを用意し、
ユーザーがAかBを選んで選択された方に必要な引数を渡し、データを取得させます。
しかし、A,Bの処理でエラーが出た場合、取得するデータではなくエラーコードを返すには、どうしたら良いでしょうか。
調べたところ、返り値をObject型とするか、ref/outを渡すか、例外を取得するのが良いとありました。
しかし、Object型は汎用性が高すぎて対応する型で返る保証がないので良くなく、
try-catchで例外を取って対処するのは、
A,Bがデータを返すまでの処理の仕方は不明で、どういうエラーが来るか分からないため、
一括でint型のエラーコードを取って、それに対応するメッセージをユーザーに返し、
それ以外は不明なエラーとしたいです。
また、A,BがC#なのかC++なのか他の何かなのかも不明なため、ref/outもできるだけ使いたくないです。
そのため、現在は取得したデータを返すクラスにエラーコード用の枠を用意して、0なら成功してデータ取得、それ以外ならエラーとしています。
しかし、取得するデータが単純なクラスやリストならともかく、どうしても対応しきれない場合もありそうで気持ち悪いので、
他に適切な方法はないでしょうか
追記
申し訳ありません。await/asyncでデータ取得処理を行うという条件も追加させてください
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。