这问题搞了我一下午啊,都怪vs2012,Entity Framework不能自动生成代码的原因!
2014-03-17 18:01
344 查看
这阵子做项目,重新拾起Silverlight。正好前一阵子装系统,果断就把VS2012装了上去,不想这回就遇到了问题。
我创建的项目是Silverlight Business Application,Silverlight版本5,自带WCF RIA。既然用的也是没啥新意的SQL Server,那就顺带用上Entity Framework做ORM吧。
以上这些都没啥难度。我先创建的数据库表,然后创建ADO.Net 实体模型。下一步自然是添加新的域服务(Domain Service),然后关联到刚才创建的实体模型。
不幸在这儿卡主了:
可用的上下文类一个都木有,并且有提示说“有些Entity Framework上下文类可能已被排除”!
当然啦,这种问题难不倒我,谷歌了半天,终于有结果了。
在VS2012中,Entity Framework缺省地基于DbContext创建上下文类(这个词好别扭),然而WCF RIA不支持它。
这个我就直接翻译下哈:
为了解决这个问题,你必须把它转成一个基于ObjectContext的模型。按下面的步骤做就行了:
1、在设计器中打开你的实体模型(如有必要,点一下设计器中空白的地方,保证没有对象处于选中状态)。
2、在属性窗口中,更改代码生成策略,从无改到默认。
3、删除那两个.tt文件。这里假设从创建实体模型以来,你没有修改这些文件。如果你有修改过,那么这些修改将会丢失。
4、重新生成项目。
现在,问题解决了。
我创建的项目是Silverlight Business Application,Silverlight版本5,自带WCF RIA。既然用的也是没啥新意的SQL Server,那就顺带用上Entity Framework做ORM吧。
以上这些都没啥难度。我先创建的数据库表,然后创建ADO.Net 实体模型。下一步自然是添加新的域服务(Domain Service),然后关联到刚才创建的实体模型。
不幸在这儿卡主了:
可用的上下文类一个都木有,并且有提示说“有些Entity Framework上下文类可能已被排除”!
当然啦,这种问题难不倒我,谷歌了半天,终于有结果了。
原因
在VS2012中,Entity Framework缺省地基于DbContext创建上下文类(这个词好别扭),然而WCF RIA不支持它。
解决方法
这个我就直接翻译下哈:为了解决这个问题,你必须把它转成一个基于ObjectContext的模型。按下面的步骤做就行了:
1、在设计器中打开你的实体模型(如有必要,点一下设计器中空白的地方,保证没有对象处于选中状态)。
2、在属性窗口中,更改代码生成策略,从无改到默认。
3、删除那两个.tt文件。这里假设从创建实体模型以来,你没有修改这些文件。如果你有修改过,那么这些修改将会丢失。
4、重新生成项目。
现在,问题解决了。
相关文章推荐
- .net项目配置文件导致runat="server"无效,不能自动生成声明代码的问题
- ButterKnife的使用以及不能自动生成代码问题的解决
- 在新复制的MFC Visual C++项目中不能自动生成代码问题的解决
- mybatis 的逆向工程自动生成代码,如果不能使用,可能的原因
- ButterKnife的使用以及不能自动生成代码问题的解决
- webservice 自动生成不能建立实体类的问题
- 解决Eclipse官网下的自带Eclipse编辑器不能自动代码提示的问题。
- 关于ISP下载中 编译后自动下载代码不能执行完成的一点问题
- 哪些年遇到过的Andriod问题(9)R.java文件不能自动生成解决方法
- hibernate不能自动生成表的原因总结
- 使用 generator 自动生成代码,为什么在 mac 下不能生成到 src 目录下
- 关于eclipse里的mybatis自动生成代码插件问题
- 关于Hibernate不能自动生成数据库表-POJO和映射文件正确但是访问对应表出错-的原因
- android 典型问题:R.java文件不能自动生成的解决办法
- 解决hibernate5不能自动生成表的问题
- 解决android中Layout文件下的xml文件配好后,R类中不能自动生成相应代码
- 解决AndroidADT自带Eclipse编辑器不能自动代码提示的问题。
- 使用Hibernate自动生成表不能正确创建表的问题
- 配置generatorConfig.xml自动生成的代码的sql书写问题
- mfc中自动生成的“CView::OnLButtonDown(nFlags, point);”代码问题