我有一段将类型序列化为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
的类型。我希望它忽略其他所有东西,比如列表和其他自定义类型。
有没有人能建议我怎么做?或者我需要在某个地方指定我想要允许的类型,然后打开属性的类型,看看它是否被允许?这有点乱,所以如果我能有一个更整洁的方式就好了。
https://stackoverflow.com/questions/2442534
复制相似问题