オブジェクトのすべてのパブリック プロパティを別の型の別のオブジェクトにコピーする必要があります。Jon Skeet によって作成されたライブラリMiscUtilには、1 つのことを除いて、私が必要とするものに完全に適合するクラス PropertyCopy が含まれています。ソース オブジェクトに、ターゲット オブジェクトの別の型に変換する必要があるプロパティがあります (Guid => 文字列)。
PropertyCopy の部分コード:
if (!targetProperty.PropertyType.IsAssignableFrom(sourceProperty.PropertyType))
{
//My specific case
if (sourceProperty.PropertyType == typeof(Guid) && targetProperty.PropertyType == typeof(string))
{
//Expression.Bind(targetProperty, [--Convert Guid to string expression??--]);
}
else
{
throw new ArgumentException("...");
}
}
ソース プロパティの変換をターゲットにバインドする式を作成することは可能でしょうか?