我有一些問題,此代碼:實體框架6.1.1代碼首先創建不可讀表
class Program
{
static void Main(string[] args)
{
Database.SetInitializer(new DropCreateDatabaseAlways<MyContext>());
using (var context = new MyContext()) {
var newType = new SysType { Name = "New Name" };
context.SysTypes.Add(newType);
context.SaveChanges();
}
using (var context = new MyContext()) {
Console.WriteLine(context.SysTypes.FirstOrDefault());
}
Console.ReadLine();
}
}
public class SysType
{
public int Id { get; set; }
public string Name { get; set; }
}
public class MyContext : DbContext
{
public MyContext() : base("name=MyDb") { }
public DbSet<SysType> SysTypes { get; set; }
}
在執行過程中發生異常的程序:
。 0System.Data.Entity.Infrastructure。 DbUpdateException」
System.Data.SqlClient.SqlExeption:特設更新系統目錄不允許
但是數據庫並獲得創建(後不允許我像)
![SQL Server的對象資源管理器視圖]
如果嘗試查詢表的數據,則拋出異常
![查詢表數據異常]
如果我使用SQL腳本手動創建表,則表查詢成功。
很多小時後,我意識到這是因爲桌子的名字。
如果更改表名 - 所有工作都很完美。
我的問題是:爲什麼我的表名SysType
拋出異常? аnd是否還有其他引起類似問題的表名?
我會很高興聽到回答我的問題
更新:型號第一種辦法 - 同樣的結果
謝謝。我沒有注意到名字的複數化 – Ssh 2014-09-10 15:47:14