我一直在寻找,但到目前为止还没有找到解决方案。
我有3个概念表:
Case
-------------
CaseId
ExternalCaseId
ExtraField
-------------
ExtraFieldId
Name
Type
RegExValidationString
ExtraFieldRef
--------------
Id
CaseId
ExtraFieldId
Value
有了这个,我可以动态创建表单的字段并保存给定的值。我遇到的麻烦是如何使用代码优先模型与EF创建这种关系。
非常感谢任何帮助或指示。
答案 0 :(得分:1)
未经测试,但这样的事情应该作为模型的起点:
public class Case
{
public int CaseId {get;set;}
public virtual Case ExternalCase {get;set;}
}
public class ExtraField
{
public int ExtraFieldId {get;set;}
public String Name {get;set;}
public String Type {get;set;}
public String RegexValidationString {get;set;}
public virtual IEnumerable<ExtraFieldRef> ExtraFieldRefs {get;set;}
}
public class ExtraFieldRef
{
public int Id {get;set;}
public virtual Case Case {get; set;}
public virtual ExtraField {get;set;}
public int Value {get;set;}
}
答案 1 :(得分:1)
贾斯汀,
我强烈建议您搜索已解决类似情况的其他帖子。对我的简单搜索产生了这个问题,以回答您的问题:Create Code First Many to Many With Additional Fields
为了让您的帖子不会被关闭或标记下来(在哪里丢失分数),请自己帮忙并阅读FAQ并遵守“The Dude”。如果您完成常见问题解答中的每个部分,您甚至可以获得徽章!
干杯