我有自己的数据类型,可用于具有各种属性来操作值的数据库,例如:
First: original value
IsNull: is the current state null (no value in Data)
IsFirstNull: was the initial state of the object null
Changed: has the value changed since the initial value was set.
SetNull(): set the object to null
SetFirstNull: set the initial value to null
Reset: set values all to original settings.
每个对象都有这些。每种标准变量都有一个对象,例如:
int - IntType
string - StringType
bool - BoolType
对于我正在使用的每个表,我在一个类中都有这些变量。
我希望能够访问这些,所以我正在考虑将这些添加到字典中。但是每个项目都是不同的类型(IntType、StringType、BoolType 等)。
所以我将它们设置为Dictionary<string, object>
或Dictionary<string, dynamic>
。
不确定哪个是最好的 - 一个比另一个更好吗?
public class LoginDC
{
private IntType loginID = new IntType();
private StringType userName = new StringType();
public LoginDC()
{
Dictionary<string, dynamic> propertyList = new Dictionary<string, dynamic>();
propertyList.Add("LoginID", loginID);
propertyList.Add("UserName", userName);
propertyList["UserName"].First = "Tom"
}
}
所以我的另一个问题是:
propertyList 在 .Add 之后是否包含对 loginID 和 userName 的引用?因此,如果我更改 propertyList 或变量两者都将包含相同的值。或者 propertyList 是否包含两个变量中值的副本?
这似乎是一个参考,但不确定。