検索して近づいてきましたが、次に何をする必要があるのか よくわかりません。したがって、オブジェクトと文字列を受け取る関数があります。
文字列の形式は「property=value」です。そこで、= 記号の文字列を prop と value の 2 つの文字列に分割しました。次に、オブジェクトの同じプロパティを文字列と比較したいと思います。だから私はこのようなものを持っています:
明確化編集: tostring() が機能すると思いますが、私が求めていたのはその逆だと思います。実際のプロパティ値の型は、bool、datetime、int、または string (およびその他の可能性がありますが、カスタム オブジェクトはありません) である可能性があるため、値を正しい型にキャストまたは変換して比較する必要があると考えていました。
2回目の説明。質問した人にとっては、データを評価するための単純なユーザー定義可能なルール システムを作成しようとしているということです。データは人間が入力するので、私の最大の懸念は、他のタイプの文字列表現が実際にそれらのタイプであるかのように比較できないことです。種類。
private static bool evaluateCriteria(string s, Client o){ bool evaluation = false; string prop = s.Split('=')[0]; string value = s.Split('=')[1]; var propvalue = (o).GetType().GetProperty(prop).GetValue(o, null); //ok so not I want to compare value to propvalue, but don't know how // evaluation = (value == propvalue); return evaluation; }