我正在使用此扩展方法来转换项目中的对象。但它无法转换GUID
,因为它没有实现IConvertible
接口,但对于转换我总是必须使用new Guid(fooobject)
,但我希望我可以使用这种方法将对象转换为GUID
. 任何想法我们如何才能使其灵活地工作GUID
。
扩展方法是
public static T ToType<T>(this object val, T alt) where T : struct, IConvertible
{
try
{
return (T)Convert.ChangeType(val, typeof(T));
}
catch
{
return alt;
}
}