使用连续的 TryParse 调用是否是猜测字符串“真实类型”的合理方法?

2024-03-17

这与我的有没有使用T4生成类的项目模板? https://stackoverflow.com/questions/18315617/are-there-any-project-templates-for-using-t4-to-generate-classes问题。我有字符串列表(nvarchar)我需要为其生成正确类型的类属性的参数值。

这些值都是原语——最复杂的DateTime- 在集合中{int, double, bool, DateTime}。目前,我已经为此类列表之一手动编码了类型属性,并解析了我开始的字符串DateTime.TryParseExact。如果失败,我会尝试Double.TryParse,在底部我放弃猜测并假设它确实是一个字符串。

这是一个相当合理的方法,还是我应该使用其他更复杂或更准确的方法?


如果该组值仅是[double, DateTime, bool]这将是一个详尽但相当合理的方法。这些集合之间存在简单的重叠(true总是一个bool and 5从来都不是bool).

两者兼具int and double由于存在大量重叠,因此这个命题有点不稳定。基本上任何int也可以看作是double。例如我该如何解释4如果它出现在值集中?它可以用两种方式解释,如果值随着时间的推移而变化,您可以看到生成的代码的类型也会发生变化。

考虑一列是否总是巧合地具有整数。因此你生成了int值并编写了一些依赖于它们的代码int。然后大约一个月后,添加了一个非整数,突然你就吐出来了double价值观。这可能会对您的代码产生不小的影响。

就我个人而言,我采取的方法是简单地使用另一个表来规定内容的类型。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用连续的 TryParse 调用是否是猜测字符串“真实类型”的合理方法? 的相关文章

随机推荐