vb.net使用lambda插入特定列

时间:2015-02-21 20:38:01

标签: asp.net-mvc vb.net lambda

我有一个按名称拥有所有州的数据库,例如:伊利诺伊州,印第安纳州等。

ID ILLINOIS INDIANA

我想在其中一列中插入一个新行和一个数字。我有一个变量,我希望通过该变量查找一列(变量=列名),然后仅在该列中插入一些内容。

这可能吗?

下面的内容......但是我不能使用字符串来识别列,因为我想在下面......

Dim obj As New DataClassesDataContext
Dim statesdb As New StatesDb

statesdb.("Illinois") = "12345"   //this is where I would like to use my         dynamic variable and save the data only into that particular column/state.

obj.StatesDb.InsertOnSubmit(statesdb)

1 个答案:

答案 0 :(得分:0)

我看到两个解决方案。

  1. 切换到旧学校数据集
  2. 使用Reflection设置属性值。请参阅MSDN
  3. 中的参考资料

    在你的例子中

    'Get the type and PropertyInfo. 
    Dim myType As Type = StatesDb.GetType()
    Dim pinfo As PropertyInfo = myType.GetProperty("Illinois")
    pinfo.SetValue(statesdb, "12345", Nothing)