我有一些问题,此代码:实体框架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