Y、N、またはDBnullのテキストフィールドを取り、ブール値を入力する以下のlinqクエリがありますか? フィールドの値に応じて、True、False、または null のいずれかのパラメーター。
var dset = from i in tbdc.Talkbacks
where i.talkback_id == id
select new Talkback(
i.talkback_id, i.acad_period, i.reference,
i.staff_member, i.date_received, i.no_talkers,
i.gender_id, i.names, i.type_id,
i.method_id, i.area_id, i.site_id,
i.category_id, i.date_closed, i.expenddate,
i.acknowledgementtarget,
(i.targetmet == "Y") ? true :
((i.targetmet == "N") ? false : null),
(i.acknowledgementtargetmet != "N") ? true : false
問題の行は
(i.targetmet == "Y") ? true : ((i.targetmet == "N") ? false : null)
読んだ後、インラインの2番目と3番目の引数が同じタイプであるか、暗黙的に相互に変換可能である必要があると述べているドキュメントを見つけました。
私の質問は、この制限を回避して目的の結果を得るにはどうすればよいですか?
私は C# に比較的慣れていないので、そのすべての癖/機能にまだ慣れていません。