我有一段代码将类型序列化为Html标签。
Type t = typeof(T); // I pass <T> in as a paramter, where myObj is of type T
tagBuilder.Attributes.Add("class", t.Name);
foreach (PropertyInfo prop in t.GetProperties())
{
object propValue = prop.GetValue(myObj, null);
string stringValue = propValue != null ? propValue.ToString() : String.Empty;
tagBuilder.Attributes.Add(prop.Name, stringValue);
}
这个伟大的工程,但我希望它只是对基本类型,像这样做int
,double
,bool
等,以及其他类型的不是原始的,但可以像容易序列化string
。我希望它忽略其他所有内容,例如列表和其他自定义类型。
谁能建议我该怎么做?还是我需要在某个地方指定要允许的类型,然后打开属性的类型以查看是否允许?有点杂乱,所以如果我有一个更简洁的方法,那就太好了。
System.String
不是原始类型。