实体框架和MySql存储过程

时间:2011-11-22 08:53:29

标签: c# entity-framework entity-framework-4

我正在使用Entity Framework 4.0,VS 2010,MySql服务器数据库和mysql-connector-net-6.4.4进行连接。它工作正常,也就是说,它可以很好地生成Model类,csdl,ssdl等文件。但是,对于存储过程,它不起作用。

以下是发生的事情..

右键单击模型浏览器中的SP,选择[添加功能导入]。这打开了一个对话框 填写适当的值,例如“函数导入名称”,“存储过程名称” 单击[获取列信息]。这导致在此按钮底部填充了一些网格。在网格中,有一个名为[EDM Type]的列。由于某些未知原因,此列显示[不支持] :( 现在,单击[创建新的复杂类型]。这没关系,没关系 现在,单击“确定”按钮 完成上述所有步骤后,代码中没有创建复杂类型,这就是问题所在。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

生成的Complex Type位于模型浏览器的模型部分的Complex Types文件夹中。

要在代码中访问ti,请将其用作任何其他实体

MyComplexType ct = new MyComplexType();

您可以将其用作存储过程的结果类型:

List<MyComplexType> info = ctx.GetAllEmployees().ToList<MyComplexType>();

您必须确保GridView的列映射与Complex Type的属性匹配,或者GridView的属性AutoGenerateColumns设置为true。< / p>