【发布时间】:2011-09-01 19:01:38
【问题描述】:
我正在尝试找出设计一个将其属性保存在数据库中的类的最佳方法。让我们以Person 为例。要创建一个新人并将其放入数据库中,我希望 DateOfBirth 属性是可选的(即在数据库中可以为 NULL)。
这是我的示例代码:
namespace BusinessLayer
{
class Person
{
public string FirstName { get; set; }
public string LastName { get; set; }
public DateTime DateOfBirth { get; set; }
}
}
我不确定这些字段是否应该公开。我应该这样做吗:
class Program
{
static void Main(string[] args)
{
Person person1 = new Person("Kate","Middleton",null);
}
}
或者像这样:
class Program
{
static void Main(string[] args)
{
Person person1 = new Person();
person1.FirstName = "Kate";
person1.LastName = "Middleton";
}
}
我也想知道我应该如何处理类的可选属性。填充字段后,如何将它们保存到数据库中?我有一个 DatabaseComponenet 类来保存信息。保存到数据库时如何处理可选?
那么,我会做这样的事情吗:
public int Save()
{
int personId;
personId = DatabaseComponent.InsertPerson(FirstName, LastName, DateOfBirth);
return personId;
}
感谢您的帮助!一些关于良好类设计的有用 URL 也将不胜感激。
【问题讨论】: