当前位置:   article > 正文

C# 使用EF操作数据库_c# ef

c# ef

当使用C#时,Entity Framework (EF) 是一个非常强大的对象关系映射 (ORM) 工具,用于简化与数据库的交互。下面是一个简单的步骤指南,说明如何使用Entity Framework进行数据库操作:

  1. 创建一个数据库模型

    • 在Visual Studio中创建一个新的C#项目。
    • 安装Entity Framework NuGet包。
    • 定义你的数据库模型,通常是创建一个包含表的类。
    • 根据需要,使用DbContext类来定义数据库上下文。
  2. 创建实体类

    • 实体类是数据库表的映射,每个实体类对应数据库中的一张表。
    • 在C#中,创建一个类,其中的属性对应于表中的列。
  3. 创建数据库上下文

    • 创建一个继承自DbContext的类。
    • 在该类中,使用DbSet<TEntity>属性来表示数据库中的表,其中TEntity是你定义的实体类。
  4. 配置数据库连接

    • App.config或者Web.config中配置数据库连接字符串,以便Entity Framework知道如何连接到你的数据库。
  5. 执行数据库操作

    • 使用创建的数据库上下文类来执行数据库操作,如插入、更新、删除或查询数据。

  1. using System;
  2. using System.Linq;
  3. using Microsoft.EntityFrameworkCore;
  4. // 实体类
  5. public class Product
  6. {
  7. public int Id { get; set; }
  8. public string Name { get; set; }
  9. public decimal Price { get; set; }
  10. }
  11. // 数据库上下文类
  12. public class MyDbContext : DbContext
  13. {
  14. public DbSet<Product> Products { get; set; }
  15. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
  16. {
  17. optionsBuilder.UseSqlServer("YourConnectionString");
  18. }
  19. }
  20. public class Program
  21. {
  22. public static void Main(string[] args)
  23. {
  24. // 添加产品
  25. AddProduct(new Product { Name = "Product A", Price = 10.5m });
  26. // 显示所有产品
  27. ShowAllProducts();
  28. // 更新产品
  29. UpdateProduct(1, "Updated Product A", 15.0m);
  30. // 删除产品
  31. DeleteProduct(2);
  32. // 显示所有产品
  33. ShowAllProducts();
  34. Console.ReadLine();
  35. }
  36. // 添加产品
  37. public static void AddProduct(Product product)
  38. {
  39. using (var context = new MyDbContext())
  40. {
  41. context.Products.Add(product);
  42. context.SaveChanges();
  43. Console.WriteLine("Product added successfully.");
  44. }
  45. }
  46. // 显示所有产品
  47. public static void ShowAllProducts()
  48. {
  49. using (var context = new MyDbContext())
  50. {
  51. var products = context.Products.ToList();
  52. Console.WriteLine("All Products:");
  53. foreach (var product in products)
  54. {
  55. Console.WriteLine($"ID: {product.Id}, Name: {product.Name}, Price: {product.Price}");
  56. }
  57. }
  58. }
  59. // 更新产品
  60. public static void UpdateProduct(int id, string newName, decimal newPrice)
  61. {
  62. using (var context = new MyDbContext())
  63. {
  64. var product = context.Products.FirstOrDefault(p => p.Id == id);
  65. if (product != null)
  66. {
  67. product.Name = newName;
  68. product.Price = newPrice;
  69. context.SaveChanges();
  70. Console.WriteLine("Product updated successfully.");
  71. }
  72. else
  73. {
  74. Console.WriteLine("Product not found.");
  75. }
  76. }
  77. }
  78. // 删除产品
  79. public static void DeleteProduct(int id)
  80. {
  81. using (var context = new MyDbContext())
  82. {
  83. var product = context.Products.FirstOrDefault(p => p.Id == id);
  84. if (product != null)
  85. {
  86. context.Products.Remove(product);
  87. context.SaveChanges();
  88. Console.WriteLine("Product deleted successfully.");
  89. }
  90. else
  91. {
  92. Console.WriteLine("Product not found.");
  93. }
  94. }
  95. }
  96. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/666141
推荐阅读
相关标签
  

闽ICP备14008679号