gpt4 book ai didi

linq-to-sql - 使用Linq-to-SQL插入通过反射确定的对象

转载 作者:行者123 更新时间:2023-12-02 04:13:53 26 4
gpt4 key购买 nike

我正在尝试在给定键值列表的表中填充一行

使用DataContext.Mapping,我能够找到正确的表(给定表名)并创建一行。

// Look up the table
MetaTable matchedTable = null;

foreach (MetaTable tableMetaData in db.Mapping.GetTables())
{
if (table.Equals(tableMetaData.TableName))
{
matchedTable = tableMetaData;
break;
}
}

if (matchedTable == null)
{
throw new Exception("Invalid table name specified");
}

然后,我遍历行属性并填充值。
// Iterate through the dictionary and try to match up the keys with column names
foreach (KeyValuePair<string, string> listItem in list)
{
PropertyInfo propertyInfo = rowType.GetProperty(listItem.Key);

if (propertyInfo == null)
{
throw new Exception("Invalid column name specified");
}

// Set the value on the object
try
{
propertyInfo.SetValue(row, Convert.ChangeType(listItem.Value, propertyInfo.PropertyType), null);
}
catch
{
throw new Exception("Value specified cannot be converted to database type");
}
}

现在,我需要将此行对象重新插入数据库。我一直在玩 db.GetTable<rowType>();,但是没有运气。谢谢

最佳答案

我想得太多了

db.GetTable(rowType).InsertOnSubmit(row);
db.SubmitChanges();

关于linq-to-sql - 使用Linq-to-SQL插入通过反射确定的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3772379/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com