c# – MySql EF 6存储过程导入功能不支持EDM类型
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了c# – MySql EF 6存储过程导入功能不支持EDM类型,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1433字,纯文字阅读大概需要3分钟。
内容图文
![c# – MySql EF 6存储过程导入功能不支持EDM类型](/upload/InfoBanner/zyjiaocheng/888/6e700a68c8b740b684d9b137d0fc3e9b.jpg)
我是使用MySQL和Entity Framework的新手,在将存储过程导入edmx文件时遇到了一个问题.在下图中,您可以看到EDM类型列已列出我从SP返回的所有列都列为“不支持”.如果我继续并在窗口中单击“确定”,它将生成复杂类型类;但是,类文件中不包含任何属性.
有没有办法解决这个问题?我有谷歌搜索堆栈溢出相当多.我读过的唯一解决方案是手动生成类文件并手动调用SP,或者手动修改edmx文件.
解决方法:
似乎是一个问题,如http://bugs.mysql.com/bug.php?id=79180所述,最近一周.
我手动编辑edmx直接将属性添加到自动生成的ComplexType,并在自动生成的FunctionImportMapping部分的返回映射中添加ScalarProperties.
在进行这些手动编辑之后,我现在可以使用标准EF模型调用我的SP,并且我得到所有返回的行和列(以下示例现在适用于我,在手动更改edmx文件之前,我回来了列表中的空对象 – 每行返回一个对象 – 无数据)
using (var context = new therinksEntities())
{
ObjectResult<getGLDistSection_Result> rdrs = context.getGLDistSection("AIM", "Deferred", "2015-07-01", "2015-09-30");
int i = 0;
foreach (getGLDistSection_Result result in rdrs)
{
NonBlockingConsole.WriteLine(i++ + ":" +
result.glaccount + ":" +
result.posteddate + ":" +
result.customername + ":" +
result.category + ":" +
result.description + ":" +
result.debit + ":" +
result.credit + ":" +
result.balance);
}
}
我正在使用VS 2015和软件包 – EF 6.1.3,MySql.Data 6.9.8,MySql.Data.Entit 6.9.8
MySql数据库版本MySql 5.5.46-log
如果需要使用许多SP,这是一个痛苦的解决方法.但是,通过修改edmx并保存和验证..所有正确的代码都与属性一起生成 – 因此不需要创建手动类或其他属性.
内容总结
以上是互联网集市为您收集整理的c# – MySql EF 6存储过程导入功能不支持EDM类型全部内容,希望文章能够帮你解决c# – MySql EF 6存储过程导入功能不支持EDM类型所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。