㈠ MVC + EF 無法自動生成資料庫了,咋回事
那是因為你沒有釋放資料庫鏈接~ 當資料庫有人鏈接的時候 是不可以刪除資料庫的~ 驗證,你可以在資料庫中把資料庫刪了~ 然後運行,看是否會生成資料庫~
㈡ EF 創建的資料庫在哪裡
要和你的DbContext 一致public class 這里=>BQEntities: DbContext
㈢ EF如何在運行時創建新資料庫,新表,並且能為新表建立新Model
Code First 倒是可以 運行時創建新資料庫,新表 (也就是 如果資料庫不存在的話, 會創建)
但是 能為新表建立新Model 的. 就麻煩了......
㈣ EF中的code first模式 怎麼創建資料庫
方法/步驟
1
EF的Code First模式不需要我們創建什麼數據向導,直接寫代碼就行了。我們用NET最簡單的控制台應用程序來說明。如下圖所示
7
通過以上的步驟,你感覺到EF的Code First模式的魅力了沒,自動創建資料庫以及表。這也是現在應用最多的模式了,好了,這次分享就到這里。有什麼問題的話,留言咨詢即可。
㈤ C# ef自動生成資料庫
要把Model 轉換成sql 資料庫 只能還原出結構出來
類似ORM Model First
找到這個類 對應的屬性 跟類名 產生對應的表名+欄位名 的SQl Creat Table 語法
㈥ vs2015 mvc ef怎麼創建資料庫
具體的步驟有點復雜大概的步驟是
1.創建實體類
2.創建上下文類
3.去web.config設置資料庫連接字元串
4.添加配置遷移文件
5.更新配置遷移文件
6.update-database
具體的我得去看下我的文件夾,下午給你一個具體的步驟
㈦ EF code first 怎樣創建資料庫視圖
1. 使用CodeFirst方式創建資料庫
我們新建一個控制台項目,項目中添加兩個Model:Author和Blog以及DbContext。 DbContext的添加方式如下:
項目上右鍵->添加->新建項->ADO.NET Entity Data Model->Empty Code First model
項目代碼如下:
1 //默認生成的數據表名為類名+字母s,這里使用TableAttribute來指定數據表名為T_Authors
2 [Table("T_Authors")]
3 public class Author
4 {
5 public int Id { set; get; }
6 public string Name { set; get; }
7 /*
8 此處定義了Blog類型的屬性,所以要確保Blog類中至少要有一個表示主鍵的欄位,即public int Id { set; get; }。
否則在生成數據表時會報錯:"EntityType 'Blog' has no key defined. Define the key for this EntityType.
9 Blogs: EntityType: EntitySet 'Blogs' is based on type 'Blog' that has no keys defined."
10 */
11 public virtual ICollection<Blog> Blogs { set; get; }
12 }
13
14 [Table("T_Blogs")]
15 public class Blog
16 {
17 public int Id { set; get; }
18 public string Title { set; get; }
19 public DateTime Time { set; get; }
20 public int AuthorId { set; get; }
21 public virtual Author Author { set; get; }
22 }
23
24 public class MyDbContext: DbContext
25 {
26 public MyDbContext()
27 : base("name=MyDbContext")
28 {
29 }
30 //DbContext會根據配置文件中connectionStrings指定的資料庫名稱來建立資料庫
31 //DbContext根據DbSet屬性的類型來創建數據表,這里指定了Author類型的屬性,所以會生成T_Authors數據表
32 public virtual DbSet<Author> Authors { set; get; }
33 }
CodeFirst方式會根據配置文件中的配置生成資料庫,這里小編使用的是MYSQL資料庫,配置文件如下:
1 <!--EF for MYSQL-->
2 <entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
3 <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
4 <providers>
5 <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
6 </providers>
7 </entityFramework>
8 <connectionStrings>
9 <add name="MyDbContext" connectionString="server=localhost;port=3306;database=EF;uid=root;password=root" providerName="System.Data.MySqlClient" />
10 </connectionStrings>
PS:小編使用的是EF6和MYSQL資料庫,所以要在項目中添加對Mysql.Data.Entity.EF6以及EntityFrameword 6.0的引用。
到此,我們已經完成生成資料庫的工作,接下來在Main方法中寫兩行代碼:
1 using (var db = new ManagerDb())
2 {
3 db.Authors.Add(new Author() { Name = "xfh" });
4 db.SaveChanges();
5 }
㈧ .net+mvc5+oracle,使用EF自動創建資料庫表的時候,為什麼關聯表沒有自動生成
可以使用Entity Framework的Db First模式生成model。
第一步:創建
ASP .NET MVC項目
第二步:創建實體模型
在項目上右擊 添加新建項目→Ado.Net實體數據模型
如下圖所示:
第三步:與現有的資料庫進行連接生成EF實體
然後按照如下所示,選擇從資料庫生成實體數據模型【當然如果你想使用CodeFirst方式也是可以的,這是後話了】:
新建連接到現有的資料庫,如下圖所示:
點擊下一步,選擇我們要生成實體對應的表、試圖、存儲過程等,如下圖所示:
最後點擊完成,則系統幫我們生成了資料庫實體類以及EDMX的定義文件。
如圖所示: