我希望有人可以帮助我映射遗留数据库。我在这里描述的问题一直困扰着其他人,但我无法在网络上找到真正好的解决方案。
免责声明:这是一个遗留数据库。我无法控制复合键。他们很烂,无论你告诉我他们很烂,都无法改变。我也无法添加代理键。请不要建议其中任何一个,因为它们不是选项。
我有 2 个表,都带有复合键。一个表中的一个键用作从另一个表中获取集合的键的一部分。简而言之,表之间的键不完全匹配。ClassB 在任何地方都使用,如果可能的话,我想避免为这个映射添加属性。
public class ClassA
{
//[PK]
public string SsoUid;
//[PK]
public string PolicyNumber;
public IList<ClassB> Others;
//more properties....
}
public class ClassB
{
//[PK]
public string PolicyNumber;
//[PK]
public string PolicyDateTime;
//more properties
}
我想获取 ClassA 的实例并获取与 PolicyNumber 匹配的所有 ClassB 行。我试图让一对多的事情发生,但我意识到这在技术上可能是一个多对多,我只是将其视为一对多。
我尝试过使用关联类,但还不够远,无法查看它是否有效。我对这些更复杂的映射不熟悉,正在寻求建议。我对几乎任何想法都持开放态度。
谢谢,科里