我正在构建一个控制台应用程序,并且我有一个解析函数,实际上是两个,它在插入数据库后清理用户输入。但是在我解析值之后,我将它们保存在一个对象中,然后我使用对象的一个方法将数据保存在数据库中。
这是我所拥有的:
static int TryParse(string lable, string field)
{
string str = Console.ReadLine();
string rgx;
string warning;
switch (field)
{
case "phone":
rgx = @"\b\d{4}-?\d{2}-?\d{2}\b";
warning = @"Por favor insira apenas números (máximo de 8 dígitos) ou no seguinte formato: XXXX-XX-XX.";
break;
case "postal":
rgx = @"\b\d{2}-?\d{3}-?\d{3}\b";
warning = @"Por favor insira apenas números (máximo de 8 dígitos) ou no seguinte formato: XX-XXX-XXX.";
break;
case "area":
rgx = @"\b\d{2}\b";
warning = @"Por favor insira apenas números (máximo de 2 dígitos). Código de área sem o 0.";
break;
default:
rgx = @"\d+";
warning = @"Por favor insira apenas números.";
break;
}
Regex regex = new Regex(rgx);
while (!regex.IsMatch(str))
{
Console.WriteLine(warning);
Console.Write(lable);
str = Console.ReadLine();
}
return Convert.ToInt32(str.Replace("-",""));
}//End of TryParse();
另一个函数只返回一个字符串,因为它是一个电子邮件字段。
我的课是:
public class Contact
{
public int id;
public string name;
public string skype;
public string main_email;
public string company;
public int main_phone;
public int main_phone_area;
public int postal_code;
并且有一个保存方法、整个 CRUD、构造函数等...
那么,我是否应该在程序(主)中使用对象属性进行解析而不是解析我的方式?
编辑1:
控制台读/写已经是主要的。