c# – .NET告诉我TypeLoadException:违反了类型参数’T’的约束
我正在尝试初始化DataEditor< Student>的对象,其中我的DataEditor< T> class实现接口IDataEditor< T>其中T:IEditableObject.
DataEditor<Student> editor = GetEditorFor(student); 在运行时,我遇到了一个TypeLoadException: 对T的唯一约束是IEditableObject,我的Student类清楚地实现了它(我仔细检查了界面拼写,命名空间等),而且编译器也没有给我任何错误,所以我不知道为什么会出现这个错误在运行时. 如果我删除IEditableObject约束,代码运行没有此异常,但我的逻辑依赖于类是IEditableObject,所以它不是一个选项. 知道为什么会这样,以及如何解决它? 这些页面似乎是相关的,但我仍然不知道解决方案 > https://connect.microsoft.com/VisualStudio/feedback/details/270717/reflection-emit-chokes-on-method-type-parameters 这是.NET中的错误吗?有没有人找到解决方法? 编辑:声明请求 public class DataEditor<T> : ViewModel,IDataEditor<T> where T : IEditableObject public interface IDataEditor<T> : IDataEditor where T : IEditableObject 解决方法
由于同样的错误,我的项目无法构建.即使我没有使用任何这种通用类型的类.它的组装刚刚引用.
当我删除它的访问者文件时,问题解决了.如果您不需要访问者,删除它可能是一个解决方案. 这个答案可能对某人有用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- go 正则匹配
- c# – 使用xmlns属性(命名空间)查询XDocument
- JSON.stringify(),JSON.parse(),toJSON()方法使用-20 chapt
- flash学习笔记(一)---基础知识入门
- 第一次参加Coding Dojo(编程道场)有感
- postgresql insert inet类型字段
- Oracle触发器和MySQL触发器之间的区别
- ruby-on-rails – 带载波的动态图像版本
- c# – CA2000:Microsoft.Reliability:在对所有引用超出范
- Convert string to JSONObject by net.sf.json library