TLDR:我试图从用户显示的引用,到用户B,我想用户B要能够认识有一个从用户A参考。如何创建交叉引用检查?
在我的申请,我在那里我连接用户彼此才能看到它们之间的关系(例如,兄弟,姐妹等)这一部分被称为案例交叉参考的部分。
我与他们案例GUID连接的用户。
例:
如果我想连接用户A到用户B,它只是把我是从为From_Case连接用户和其他用户为To_Case。
现状:
我目前能够显示从用户A到用户B,反之亦然,但连接时,我去用户B,它并没有显示正确的案件编号或关系。
ToCases = await db.CaseCrossReference
.Include(x => x.Relationship)
.Include(x => x.Type)
.Include(x => x.Case2.CaseNumber)
.Where(x => (x.From_Case == cid || x.To_Case == cid)
&& x.Deleted == false)
.Select(o => new CaseCrossReferenceToRelationshipViewModel()
{
CaseIdFrom = o.From_Case,
CaseIdTo = o.To_Case,
CaseCrossReferenceId = o.CaseCrossReferenceId,
CaseNumber = o.Case2.CaseNumber == null ? null : o.Case2.CaseNumber.CaseNumberPrefix + "-" + o.Case2.CaseNumber.Number,
LivingTogether = o.LivingTogether,
Split = o.Split,
SplitDate = o.SplitDate,
SplitReason = o.SplitReason,
Type = o.Type.Definition,
RelationshipDefinition = o.Relationship.Definition
}).ToListAsync()
foreach (var cases in model.ToCases)
{
// Check for any reverse relationships
var reference = await db.CaseCrossReference.Include(x => x.Relationship).Include(x => x.Case1.CaseNumber).FirstOrDefaultAsync(m => m.From_Case == cases.CaseIdFrom && m.To_Case == cases.CaseIdTo);
if (reference != null)
{
if (cases.Gender == "M")
{
cases.RelationshipDefinition = await relationshipsdd.Where(r => r.Id == reference.Relationship.Id).Select(r => r.MaleReverseRelationshipDefinition).FirstOrDefaultAsync();
cases.CaseCrossReferenceId = reference.CaseCrossReferenceId;
cases.CaseNumber = reference.Case1.CaseNumber?.Number == null ? null : reference.Case1.CaseNumber.CaseNumberPrefix + "-" + reference.Case1.CaseNumber.Number;
}
else
{
cases.RelationshipDefinition = await relationshipsdd.Where(r => r.Id == reference.Relationship.Id).Select(r => r.FemaleReverseRelationshipDefinition).FirstOrDefaultAsync();
cases.CaseCrossReferenceId = reference.CaseCrossReferenceId;
cases.CaseNumber = reference.Case1.CaseNumber?.Number == null ? null : reference.Case1.CaseNumber.CaseNumberPrefix + "-" + reference.Case1.CaseNumber.Number;
}
}
}
你可能不知道什么是CID。这是CaseID /案例GUID查询字符串值。当我在用户A是,该CID是用户A GUID,当我去用户B它的用户B GUID。只要它是目前案件ID。
我需要能够做到以下几点:
无论在哪个用户我在,我应该能够看到其他用户(S)的连接。如果我在用户B我,那么我就应该能看到,我要用户A,反之亦然连接。
下面的图片展示了如我在PS-100002,我可以看到我有连接PS-100000nm正确的情况。
但如果去PS-100000nm,我仍然看到PS-100000nm作为我的参考。它需要是PS-100002与正确的关系(父亲)。
能否请你帮我找到这个问题的妥善解决办法?
专用房间这个话题:https://chat.stackexchange.com/rooms/60854/room-for-forrest-and-kevin-maxwell
凯文,尝试定义什么PS-XXXX代表或用易于识别的术语取代它们。如果他们每个都代表案例,可以命名为案例。 –
Sometowngeek