C# 解析方法或重载构造函数
当编写一个接受字符串并基于该字符串填充poco的方法时,最好使用静态的C# 解析方法或重载构造函数,c#,.net,C#,.net,当编写一个接受字符串并基于该字符串填充poco的方法时,最好使用静态的Parse(string s)方法,比如Int32.Parse(),还是重载构造函数以获取字符串?我更喜欢构造函数版本,但包含这两种方法很容易,因为构造函数只能调用Parse。这是紧跟着Guidstruct的模式(很可能还有其他模式) 我应该补充一点,如果您没有处理结构,那么静态方法可能应该引用构造函数(或者甚至是两者都可以调用的单独方法),因为您不能在类构造函数中分配这个 编辑:正如TrueWill指出的那样,如果您确实包括
Parse(string s)
方法,比如Int32.Parse()
,还是重载构造函数以获取字符串?我更喜欢构造函数版本,但包含这两种方法很容易,因为构造函数只能调用Parse
。这是紧跟着Guid
struct的模式(很可能还有其他模式)
我应该补充一点,如果您没有处理结构
,那么静态
方法可能应该引用构造函数(或者甚至是两者都可以调用的单独方法),因为您不能在类
构造函数中分配这个
编辑:正如TrueWill指出的那样,如果您确实包括
Parse
,那么您也应该包括TryParse
。顺便说一句,Guid
再次具有指导意义:Parse
方法实际上使用了TryParse
,如果TryParse
返回false,我建议使用.Parse(字符串s),如果它是一个简单的对象,如果对象存储的值超过1-2,则应使用构造函数,或者换句话说,如果返回值是一个成员不受解析值影响的实例,则不进行解析。如果该方法可能因无效字符串而失败,我倾向于解析,并按照.1为TryParse添加了include,虽然我仍然会同时为dlevs和try添加解析