public static BookMarkFile CreateBookMarkFile(BookMarkFileType fileType) { var retval = new BookMarkFile(); var bookdb = BookDataContext.Get(); var list = fileType == BookMarkFileType.FullFile ? CommonQueries.BookGetAllWhichHaveUserData(bookdb) : CommonQueries.BookGetRecentWhichHaveUserData(bookdb); // We only save some of the BookData fields in a book mark file. // Don't bother with the full file list (total waste of time), or the people list. var trimmedList = new List <BookData>(); foreach (var book in list) { trimmedList.Add(CreateBookMarkBookData(book)); } retval.BookMarkList = trimmedList; return(retval); }