解决方案: 加上 db.Configuration.ProxyCreationEnabled = false;这句话搞定~…
用MVC+EF做简单查询时,返回json格式数据出现问题 原代码: public ActionResult JSon({ NorthwindEntities db = new NorthwindEntities(); Employees per = db.Employees.Where(u => u.EmployeeID == ).FirstOrDefault(); return Json(per, JsonRequestBehavior.AllowGet); } 报错: 个人记录最简单而行之有…
这是因为EF外键引起的序列化问题. 解决方案: context.Configuration.ProxyCreationEnabled = false; 这里我用的是一个基类控制器用于被继承 返回EF实例前加上这段代码就可以了 //用于被继承 public class BaseController : Controller { public CucuCarEntity db { get { //从当前线程中获取该对象 CucuCarEntity db = CallContext.GetData("…
在MVC中返回JSON时出错,序列化类型为“System.Data.Entity.DynamicProxies.Photos....这个会的对象时检测到循环引用. public ActionResult GetSdirsbyFdirid(int id) { // db.Configuration.LazyLoadingEnabled = false; db.Configuration.ProxyCreationEnabled = false; List<Seconddirectory> lis…
学习 EF Code First+MVC 时遇到了在请求JsonResult时出现 序列化类型 System.Data.Entity.DynamicProxies 的对象时检测到循环引用 的异常,原因是实体之间有关联关系,在序列化这些相关的 数据对象的时候,产生无限循环引用的现象. Example: public class CollegeInfoModel { public Guid CollegeId { get; set; } [Display(Name = "学院")] pub…
今天做东西遇到了,这样的一个问题,最后了半天才找到问题所在,现在给大家分享一下问题所在: 传入字典的模型项的类型为“System.Data.Entity.DynamicProxies.doctorUserRelation_03D17F5AB0B5FFF501592690CCC9482D18F6A762589D7C84F48D8C57891D2513”,但此字典需要类型“System.Collections.Generic.IEnumerable`1[WeixinDocter.Models.doc…
在使用ajax调用web services时,正好返回的类型为datatable,想用通过json方式直接解析,但调用后,得到如下错误: 序列化类型为“System.Reflection.Module”的对象时检测到循环引用 经过查找博客,通过如下两步可以解决该问题: (1)引入Microsoft.Web.Preview.dll库 下载地址:http://download.csdn.net/detail/zlq861016/7235615 (2)在web.config中加入如下内容,位置为与sy…
发生异常的代码如下: 1: public JsonResult GetSaleByNo1(string id) 2: { 3: SaleMvcUI.Helper.saleDBEntities saleDB = new Helper.saleDBEntities(); 4:  5: var saleF = (from sf in saleDB.t_saleform 6: where sf.f_saleform_no == id 7: select sf).First(); 8:  9: retur…
MVC4 EF中将数据表外键引用的是自身,转换成Json时,总是提示错误:“序列化类型为....的对象时检测到循环引用.”: 解决办法: 把要序列化的对象转为匿名对象去掉导航属性,如下 :本来是var item=db.newsColumns.Find(id),但提示循环引用,所以改写成下面形式var item=db.newsColumns.Select(x=>new {x.id,x.name,x.parentId}).Where(x=>x.id==id). [HttpGet] public J…
接上篇的问题,给出我自己的解决方案. 同时推荐要学习MVC的可以参考下<ASP.NET MVC4 框架揭秘>. 首先,要自定义JSonResult,就要明白MVC中 JsonResult的定义.源码要自己查了,这里就不罗嗦了. 有一点要知道的就是MVC中的JsonResult是通过JavascriptSerializer(System.Web.Scripts.Serialization.JavaScripteSerializer,要添加System.Web.Extensions.dll)来实现…
定义一个继承JavaScriptConverter的子类 public class DataTableConverter : JavaScriptConverter { /// <summary>序列化</summary> public override IDictionary<string, object> Serialize(object obj, JavaScriptSerializer serializer) { DataTable dt = obj as Da…
/// 产品列表展示 /// </summary> /// <returns></returns> ) { //获得所有组别 Galasys_IBLL.IT_BIZ_PRODUCT_GROUPService iT_BIZ_PRODUCT_GROUPService = new Galasys_BLL.T_BIZ_PRODUCT_GROUPService(); var t_BIZ_PRODUCT_GROUPs = iT_BIZ_PRODUCT_GROUPService.Lo…
能看到这个标题 ,我就用解释原因,网上很多,我只给大家一个解决方案会: public <#=code.Escape(entity)#> ToPOCO() { return new <#=code.Escape(entity)#>() { <# if (simpleProperties.Any()) { foreach (var edmProperty in simpleProperties) { #> <#=codeStringGenerator.Property…
在用Ef的时候,也许经常会遇到循环引用的错误. 下面提供解决办法.(不是Json.Net,如果是Json.Net可以给导航属性通过增加特性标签来解决该问题) ef大多数问题,可以通过ToList()来解决.当这个问题解决不来的时候,你可以选择下面这种方法. IQueryable<TopicInfo> topicInfos = _topicInfoService.GetPagedEntitesQueryable(pageSize, pageIndex, wherelambda, t =>…
原因:在EF实体中,两个互为主外键关系的实体类的导航属性相互引用. 解决方法一:删除一个不需要的类的导航属性 方法二:使用DTO模型 方法三:直接返回需要的属性(不能包括相互引用的属性)…
Newtonsoft.Json.dll 或者通过->工具->库程序包管理工具->NuGet管理包->联机 输入Newtonsoft或者json.net Newtonsoft.Json是可以的: context.Response.ContentType = "text/plain"; BooksService service = new BooksService(); List<Books> list=service.GetAll().Take(5).…
错误提示: System.InvalidOperationException: 生成 XML 文档时出错. ---> System.InvalidOperationException: 不应是类型 System.Data.Entity.DynamicProxies.FrDocMain_6A6FA4013EBB9F316ECF2126518C20341055E52EDEBA21C97E7E8430E7B15A70.使用 XmlInclude 或 SoapInclude 特性静态指定非已知的类型.…
出现这个问题的原因是控制器中传给view的数据类型与View中设置的model类型不一致导致,比如控制器返回的IList类型的,而你在View里面model设置的是IEnumerable<>类型,那就会出现这种问题了,因为一个是数组类型,一个是泛型类型集合,解决办法就是保证控制器与View数据类型一致就行了 我就是直接修改传入view的模型类型的…
背景 往数据库添加数据,前端验证通过的情况下,提交报错,程序停在了SaveChanges()这行,并报如上错误. 分析 猜想是提交的领域模型不符合数据库要求,但不知道具体哪里出错.网上查资料,有人发现这是"某些字段为空"而引起的错误.每个人面对的场景不一样,打断点调试,发现有一个属性的长度超出了数据库的要求. 出错的语句: userInfo.LoginPwd = EncryptHelper.GetMd5(userInfo.LoginPwd).Substring(10); 本来是想对加密…
Memcache实例的Get方法时抛出了异常“Unable to load type System.Data.Entity.DynamicProxies.AdInfoItems_19CD09C8E46569CE66DA116258344075907E70CA60DDAA48F3D8B1AC0085248D required for deserialization.”,字面上的意思是没有反序列化.仔细检查了相关类,发现都有加“[Serializable]”. 项目是用EF做的,memcache里存…
错误描述: 1 类型“System.Data.Entity.DbContext”在未被引用的程序集中定义.必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用. D:\HF_Source\webapitest\test2\DFSoft.Plat.SQLServerDAL\BaseService\B_AgreementTypeDAL.cs 30 13 DFSof…
在一开始时将connectionStrings 写在了configSections之上如下图一示,结果抛出:“System.Data.Entity.Internal.AppConfig”的类型初始值设定项引发异常. 图一:最初配置 图二:抛出异常 解决方法,是将connectionStrings 写在了configSections之下,如图三 图三:调整后的配置…
今天在使用的EF时候,发生了"System.Data.Entity.Internal.AppConfig"的类型初始值设定项引发异常.这样的一个错误 查了原因,原来是appconfig中,connectionStrings的位置放错了.因为configSections必须是appconfig的第一个节点 这样是不对的. 应该是 感觉这种情况应该不仅仅只限于这个EF,只要configSections不是第一个标签就会有问题,也适用于其他情况~~…
Windows服务中程序发布之后会如下错误: 无法为具有固定名称“System.Data.SqlClient”的 ADO.NET 提供程序加载在应用程序配置文件中注册的实体框架提供程序类型“System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer”.请确保使用限定程序集的名称且该程序集对运行的应用程序可用.有关详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId…
报错:无法将类型"System.Data.EntityState"隐式转换为"System.Data.Entity.EntityState".   出错语句停留在:DataContext.Entry(entity).State = EntityState.Modified; 从语法上看没有什么错误.DataContext是在Model层通过添加edmx自动生成的,而出错语句所在的数据层安装了最新版的Entity Framework,我们知道:在edmx中创建实体导入…
错误信息: “System.Data.Entity.Core.EntityCommandExecutionException”类型的异常在 EntityFramework.SqlServer.dll 中发生,但未在用户代码中进行处理. 其他信息:执行命令定义时出错.有关详细信息,请参阅内部异常. 跟踪代码找到详细信息: Entity Framework已有打开的与此Command相关联的DataReader,必须首先将它关闭. EF内部是使用DataReader作为资料存取,所以如果没关闭连接就…
找半天才找到 ef添加数据时出错原因:数据库表中没有主键 ,就算表中有自增列 Added方法也会报错: -        this._db.SaveChanges() “this._db.SaveChanges()”引发了“System.Data.Entity.Infrastructure.DbUpdateConcurrencyException”类型的异常    int {System.Data.Entity.Infrastructure.DbUpdateConcurrencyExceptio…
<connectionStrings> <add name="ConnectionStringName" providerName="System.Data.SqlClient" connectionString="Data Source=.;Initial Catalog=DataBaseName;Integrated Security=True;Pooling=False" /> </connectionStri…
这是因为EF6.0重构了一些命名空间后,和VS原有的实体数据模型模板不一致了(ObjectContext context = ((IObjectContextAdapter)dataContext).ObjectContext;),只要把命名空间改一下就可以了,如下: 把using System.Data.Objects;改成using System.Data.Entity.Core.Objects;即可.…
在学习EF code First的小案例的时候,遇见了这个异常 <configSections> <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> <section name="entityFramework" type="System.Data.Entity.In…