最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#?使用EntityFramework?CodeFirst?創(chuàng)建PostgreSQL數(shù)據(jù)庫的詳細過程

 更新時間:2023年07月28日 14:55:11   作者:othersheart  
這篇文章主要介紹了C#使用EntityFramework?CodeFirst創(chuàng)建PostgreSQL數(shù)據(jù)庫的過程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

C# 使用EntityFramework CodeFirst 創(chuàng)建PostgreSQL數(shù)據(jù)庫

1.先創(chuàng)建一個ASP.Net Web應用程序,選擇Web API

2、創(chuàng)建EntityLib、EF、AppService三個類庫。EntityLib用于存放數(shù)據(jù)庫表所對應的實體,AppService用于編寫用戶對實體的一些操作方法,如增刪改查等操作。

創(chuàng)建好所有類庫之后,需要添加引用庫EntityFramework6.Npgsql,右擊項目中的引用———》管理NuGet程序包———》搜索EntityFramework6.Npgsql添加到項目中,這個庫會自動添加EntityFramework6和Npgsql的引用。需要給EF、AppService和API都添加這個引用。添加完成之后就開始寫各個類庫相應的代碼了。

EFContext類

public class EFContext : DbContext
    {
        public EFContext() : base("Postgresql")//連接字符串名稱
        {
        }
        protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            modelBuilder.HasDefaultSchema("public");//EF默認創(chuàng)建到dbo架構中,而PostgreSQL默認為public架構
            modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
            base.OnModelCreating(modelBuilder);
        }
        public DbSet<User> Users { get; set; }
    }

User類

[Table("User",Schema ="public")]
    public class User
    {
        [Key]
        [Required]
        [Column("ID")]
        public int ID { get; set; }
        public string Name { get; set; }
        public string Account { get; set; }
        public string Password { get; set; }
    }

AppService類

public class UserService
    {
        public void AddUser(User user)
        {
            try
            {
                using (var db = new EFContext())
                {
                    db.Users.Add(user);
                    db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
            }
        }
        public void DeleteUserByID(int id)
        {
            try
            {
                using (var db = new EFContext())
                {
                    db.Users.Remove(db.Users.Find(id));
                    db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
            }
        }
        public void EditUser(User user)
        {
            try
            {
                using (var db = new EFContext())
                {
                    User u = db.Users.Find(user.ID);
                    u.Name = user.Name;
                    u.Account = user.Account;
                    u.Password = user.Password;
                    db.SaveChanges();
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
            }
        }
        public User FindUserByID(int id)
        {
            try
            {
                using (var db = new EFContext())
                {
                    User user = db.Users.Find(id);
                    return user;
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
                return null;
            }
        }
        public List<User> FindAll()
        {
            try
            {
                using (var db = new EFContext())
                {
                    List<User> users = db.Users.ToList();
                    return users;
                }
            }
            catch (Exception e)
            {
                string msg = e.Message;
                return null;
            }
        }
    }

完成類的編寫之后,需要添加數(shù)據(jù)庫連接字符串,打開API的web.config文件添加:

<connectionStrings>
        <add name="Postgresql" connectionString="PORT=502;DATABASE=postgres;HOST=10.60.140.1;PASSWORD=007;USER ID=postgres" providerName="Npgsql" />
    </connectionStrings>

3.進行數(shù)據(jù)遷移,通過命令將實體類導入數(shù)據(jù)庫生成相應的數(shù)據(jù)庫表。先打開VS的工具,然后點擊NuGet包管理器 ,選擇程序包管理器控制臺,默認項目改為EF,輸入以下三行命令

1-》enable-migrations

2-》add-migration

3-》update-database

去PostgreSQL數(shù)據(jù)庫去查看發(fā)現(xiàn)已經(jīng)生成好了數(shù)據(jù)庫和對應的表了,這里因為我postgres數(shù)據(jù)庫已經(jīng)有User表了,所以修改了一下數(shù)據(jù)庫連接字符串

到此這篇關于C# 使用EntityFramework CodeFirst 創(chuàng)建PostgreSQL數(shù)據(jù)庫的文章就介紹到這了,更多相關C# 創(chuàng)建PostgreSQL數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 如何在C#中使用指針

    如何在C#中使用指針

    這篇文章主要介紹了如何在C#中使用指針,文中代碼簡單易懂,幫助大家更好的工作和學習,感興趣的朋友快來了解下
    2020-06-06
  • C#使用哈希表實現(xiàn)XML文件查詢

    C#使用哈希表實現(xiàn)XML文件查詢

    這篇文章主要為大家詳細介紹了C#如何使用哈希表實現(xiàn)XML文件查詢功能,文中的示例代碼講解詳細,具有一定的借鑒價值,有需要的小伙伴可以參考下
    2024-02-02
  • 分享WCF文件傳輸實現(xiàn)方法---WCFFileTransfer

    分享WCF文件傳輸實現(xiàn)方法---WCFFileTransfer

    這篇文章主要介紹了分享WCF文件傳輸實現(xiàn)方法---WCFFileTransfer,需要的朋友可以參考下
    2015-11-11
  • C# 鍵值對數(shù)據(jù)排序代碼

    C# 鍵值對數(shù)據(jù)排序代碼

    這篇文章介紹了C# 鍵值對數(shù)據(jù)排序代碼,有需要的朋友可以參考一下
    2013-11-11
  • C#設計模式之適配器模式與裝飾器模式的實現(xiàn)

    C#設計模式之適配器模式與裝飾器模式的實現(xiàn)

    創(chuàng)建型設計模式主要是為了解決創(chuàng)建對象的問題,而結構型設計模式則是為了解決已有對象的使用問題。本文將用C#語言實現(xiàn)結構型設計模式中的適配器模式與裝飾器模式,感興趣的可以了解一下
    2022-04-04
  • 使用C#代碼實現(xiàn)Excel與Open?XML格式互相轉換

    使用C#代碼實現(xiàn)Excel與Open?XML格式互相轉換

    Open?XML是一種基于XML的文件格式,由Microsoft開發(fā),用于存儲和交換多種類型的文件,在實際應用中,有時需要將Excel文件轉換為?Open?XML?格式,以便在其他軟件中順利打開和讀取,本文將介紹如何在?C#和VB.NET中實現(xiàn)Excel與Open?XML格式的相互轉換,需要的朋友可以參考下
    2026-03-03
  • Unity的IPostprocessBuildWithReport實用案例深入解析

    Unity的IPostprocessBuildWithReport實用案例深入解析

    這篇文章主要為大家介紹了Unity的IPostprocessBuildWithReport實用案例深入解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-05-05
  • 詳解C#壓縮、解壓文件夾/文件(帶密碼)

    詳解C#壓縮、解壓文件夾/文件(帶密碼)

    這篇文章主要給大家介紹了關于C#壓縮、解壓文件夾/文件(帶密碼)的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • 淺談C# async await 死鎖問題總結

    淺談C# async await 死鎖問題總結

    這篇文章主要介紹了淺談C# async await 死鎖問題總結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-10-10
  • c# 接口使用實例

    c# 接口使用實例

    這篇文章主要介紹了c#接口使用的實例,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07

最新評論

尼木县| 昭觉县| 镇安县| 阿拉尔市| 锦州市| 桓台县| 新晃| 来宾市| 武冈市| 桃园县| 开远市| 贞丰县| 葵青区| 禄劝| 吉首市| 云和县| 手游| 呼图壁县| 固安县| 深圳市| 阳谷县| 咸宁市| 高淳县| 临洮县| 保康县| 房山区| 醴陵市| 澎湖县| 东山县| 宝鸡市| 阳曲县| 望城县| 叶城县| 辽宁省| 汕尾市| 青龙| 扶沟县| 大石桥市| 罗山县| 拉萨市| 图木舒克市|