我有一个风格/好的代码问题。这是那些“不那么重要,因为它正在工作”的事情之一,但我仍然想从社区中获得一些见解。我在 C# 中,但该方法可以适用于任何 OOP
所以我有一个类,它本质上是一个数据容器。我将类传递给数据库,而不是传递 10 个参数。数据库写入类将每个数据成员放入其各自的 SQL 参数中,并在我的数据库中执行存储过程。
我的问题是,当我将数据收集到课程中时,我将所有数据都附加到 Change 事件中。喜欢
private void chkIce_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
if (chk.CheckState == CheckState.Checked)
outTruck.setWeather(2, true);
else
outTruck.setWeather(2, false);
}
和
private void txtTrailer_TextChanged(object sender, EventArgs e)
{
TextBox txt = (TextBox)sender;
newRecord.TrailerNumber = txt.Text.ToString();
}
这会根据用户的选择将我的班级的冰值设置为真/假。或设置文本。这很简单,但是有一点代码开销,因为每个控件都有自己的事件(发送者行上的强制转换也可能是矫枉过正)。另一种方法是在提交时收集所有数据。然后把它全部放到课堂上。还有一些叫做实体框架和 ORM 的东西,但我目前停留在 .NET 3.5 中(我们与时俱进),我读过这在你到达 4.0 之前并不适用。如果有标准,我还没有真正阅读过,它似乎比任何东西都更偏好。那么,堆栈overlowieans 的同胞......你的想法是什么?