小编use*_*887的帖子

实体框架代码优先:更新SetInitializer抛出异常

我一直在寻找这个奇怪的错误几个小时,但没有找到任何东西.我有一个非常简单的实体:

public class Company {
    public Guid Id { get; set; }
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

这是上下文:

public class MyDBContext : DbContext {

    public DbSet<Company> Companies { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

第一次运行时,一切正常.但是,当我更改实体时(例如,我为Id添加了[Key]属性),我得到了预期的"模型已更改"或出现错误.所以,我在Global.asax application_start中输入:

Database.SetInitializer<MyDBContext>
(new DropCreateDatabaseIfModelChanges< MyDBContext >());
Run Code Online (Sandbox Code Playgroud)

这是我被卡住的地方.没有编译错误,它编译时没有错误/警告.但是,当我运行我的项目时,我收到以下错误:

描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.

例外细节:System.TypeLoadException: GenericArguments[0], 'MyDB.Data.MyDBContext', on 'System.Data.Entity.IDatabaseInitializer1[TContext]' violates the constraint of type parameter 'TContext'.

请问有人有线索吗?我正在使用Entity Framework 4.1(CTP5)

entity-framework ef-code-first

7
推荐指数
1
解决办法
2256
查看次数

MVC3 Controller文件夹不会出现在URL中

这只是一个我无法弄清楚如何使其工作的例子.

在我的MVC3 Controller文件夹中,如果我添加一个名为"Admin"的新文件夹并添加带有"Index"操作的控制器"News",则在尝试打开该URL时会出现服务器错误(404):

HTTP:// URL /管理/新闻

即使你在它后面输入"/ Index",它也行不通.你怎么能形成一个层次结构,导致类似的URL?为了清楚起见,我想创建URL,如:

HTTP:// URL /文件夹1 /文件夹2 /控制器/行动

谢谢

asp.net asp.net-mvc c#-4.0 asp.net-mvc-3

7
推荐指数
1
解决办法
1234
查看次数