在具有复合键的表的代码中创建实体键

时间:2012-09-24 12:15:03

标签: c# entity-framework-4

我正在尝试为表创建实体键,以便在不加载相关表的情况下在表中插入行。

我正在尝试使用此构造函数:http://msdn.microsoft.com/en-us/library/bb739024.aspx

上述链接中的代码示例使用不同的构造函数。

我到目前为止的代码是:

KeyValuePair<String, Object> key1 = new KeyValuePair<string,object>("MainId", 1);
KeyValuePair<String, Object> key2 = new KeyValuePair<string,object>("SubId", 2);


List<KeyValuePair<String, Object>> keyList = new List<KeyValuePair<String, Object>>();
keyList.Add(key1);
keyList.Add(key2);


EntityKey entitykey = new EntityKey(

如何完成实体密钥的创建?

1 个答案:

答案 0 :(得分:1)

object value = null;
keyList.TryGetValue("MainId", out value);
EntityKey entitykey = new EntityKey("EntitySetName.TableName", "FieldName", value);

修改 要添加多个键:

IEnumerable<KeyValuePair<string, object>> entityKeyValues =
 new KeyValuePair<string, object>[] { new KeyValuePair<string, object>("Key", "Value") };
EntityKey key = new EntityKey("EntitySetName.TableName", entityKeyValues);

那应该做的工作。