我认为这个问题可能会得到回答,但是我缺乏正确的术语来准确描述我要做什么。我有几个互相引用的模型(外键/很多),在查询中,我只想第一层避免循环引用。
作为一个仅供参考,我必须将此序列化为JSON,但我想避免设置ReferenceLoopHandling。
我不确定要解决此问题的正确方法,但这是我目前的解决方案,我希望有人可以推荐最佳实践,而不是在这里进行操作:
var vResult = vDatabase.ItemsXCharacters
.Where<ItemsXCharacters>(x => x.CharaterId == vCharacterId)
.Include("Item")
.Include("Raid").ToList();
foreach(var vModel in vResult)
{
vModel.Item.ItemsXCharacters = null;
vModel.Raid.ItemsXCharacters = null;
vModel.Raid.DkpEntries = null;
}
我需要有关物品模型和团队模型的基本信息,但是我不需要它们的导航属性。当我执行.include时,它们会自动加载。