本文整理汇总了C#中Query.Include方法的典型用法代码示例。如果您正苦于以下问题:C# Query.Include方法的具体用法?C# Query.Include怎么用?C# Query.Include使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Query
的用法示例。
在下文中一共展示了Query.Include方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GetProject
public Project GetProject(int projectId, bool includeBugs = false, bool includeUsers = false)
{
using (var repositoriesContainer = new LmPlatformRepositoriesContainer())
{
var query = new Query<Project>(e => e.Id == projectId).Include(e => e.Creator);
if (includeBugs)
{
query.Include(e => e.Bugs);
}
if (includeUsers)
{
query.Include(e => e.ProjectUsers);
}
return repositoriesContainer.ProjectsRepository.GetBy(query);
}
}
示例2: GetTest
public Test GetTest(int id, bool includeQuestions = false)
{
using (var repositoriesContainer = new LmPlatformRepositoriesContainer())
{
var query = new Query<Test>(test => test.Id == id);
if (includeQuestions)
{
query.Include(t => t.Questions);
}
return repositoriesContainer.TestsRepository.GetBy(query);
}
}
示例3: CopyQuestionsToTest
public void CopyQuestionsToTest(int testId, int[] questionsIds)
{
CheckForTestIsNotLocked(testId);
using (var repositoriesContainer = new LmPlatformRepositoriesContainer())
{
var query = new Query<Question>(question => questionsIds.Contains(question.Id));
query.Include(question => question.Answers);
var questionsToCopy = repositoriesContainer.QuestionsRepository.GetAll(query);
var copiedQuestions = new List<Question>();
foreach (var questionToCopy in questionsToCopy)
{
var copiedQuestion = questionToCopy.Clone() as Question;
copiedQuestion.TestId = testId;
copiedQuestions.Add(copiedQuestion);
}
repositoriesContainer.QuestionsRepository.Save(copiedQuestions);
repositoriesContainer.ApplyChanges();
}
}
示例4: GetScheduleVisitings
public List<LecturesScheduleVisiting> GetScheduleVisitings(Query<LecturesScheduleVisiting> query)
{
using (var repositoriesContainer = new LmPlatformRepositoriesContainer())
{
return
repositoriesContainer.RepositoryFor<LecturesScheduleVisiting>()
.GetAll(query.Include(e => e.LecturesVisitMarks.Select(x => x.Student.User)))
.ToList();
}
}
示例5: GetUsers
public IEnumerable<User> GetUsers(bool includeRole = false)
{
var query = new Query<User>();
if (includeRole)
{
query.Include(u => u.Membership.Roles);
}
return UsersRepository.GetAll(query).ToList();
}
示例6: GetTestsForSubject
public IEnumerable<Test> GetTestsForSubject(int? subjectId)
{
IEnumerable<Test> searchResults;
using (var repositoriesContainer = new LmPlatformRepositoriesContainer())
{
var query = new Query<Test>().Include(test => test.TestUnlocks);
if (subjectId.HasValue)
{
query.AddFilterClause(test => test.SubjectId == subjectId.Value);
query.Include(t => t.Questions);
}
searchResults = repositoriesContainer.TestsRepository.GetAll(query).ToList();
}
return searchResults;
}