在C#中使用ORM框架進行關聯查詢時,一般需要先定義好實體類之間的關聯關系,然后根據ORM框架的語法進行查詢操作。以下是一個簡單的示例代碼,使用Entity Framework Core進行關聯查詢:
// 定義實體類
public class Author
{
public int Id { get; set; }
public string Name { get; set; }
public ICollection<Book> Books { get; set; }
}
public class Book
{
public int Id { get; set; }
public string Title { get; set; }
public int AuthorId { get; set; }
public Author Author { get; set; }
}
// 創建DbContext
public class LibraryContext : DbContext
{
public DbSet<Author> Authors { get; set; }
public DbSet<Book> Books { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("your_connection_string");
}
}
// 查詢操作
using (var context = new LibraryContext())
{
var authorsWithBooks = context.Authors
.Include(a => a.Books)
.ToList();
foreach (var author in authorsWithBooks)
{
Console.WriteLine($"Author: {author.Name}");
foreach (var book in author.Books)
{
Console.WriteLine($"- Book: {book.Title}");
}
}
}
在上面的代碼中,首先定義了兩個實體類Author和Book,并建立了一對多的關聯關系。然后創建了一個DbContext類LibraryContext,用于管理數據庫連接和實體對象。最后,在查詢操作中使用了Include方法來加載Author實體對象的Books導航屬性,實現了關聯查詢的功能。