我有一个数据库和一组存储过程。 我只想使用存储过程来访问数据库。 在模型浏览器的函数导入中,我可以基于存储过程的返回值创建新的复杂类型,但是我想重用已经拥有的类。 复杂类型下拉列表仅由实体框架生成的类型组成。 向我的班级添加[ComplexType]属性似乎并没有改变。 如果我在MyEntities.Context.cs手动更改返回类型,则在从数据库更新模型后,它将被更改回原来的状态。

#1楼 票数:0

分配sp的返回值时,可以使用Entities下拉列表并选择要返回的类型:

如您所见,我定义了一个实体,然后可以从下拉列表中选择它。

可能值得注意的是,此实体是由EF生成的-您不能使用自己创建的类或从第三方dll创建的类,除非您使用Complex类型对象,然后手动手动映射它们或使用诸如AutoMapper工具。

  ask by Leonid Vasilev translate from so

未解决问题?本站智能推荐:

2回复

使用EF6将参数传递给存储过程

我在项目中使用sql-server 2012。 我已经有了存储过程,我借助称为ExecuteSqlCommand的实体框架6方法将参数激发并将参数传递给存储过程。 我尝试发送到存储过程的参数之一是整数列表。 建议我在sql-server上创建表值参数,然后将其传递给数组或列表
1回复

使用附加的计算列将存储过程映射到实体

我目前停留在我的一个项目上,需要一些帮助。 我在MSSQL中创建了一个表值函数,该函数返回一个表和一个计算列(距离),并已使用实体设计器将其映射到Entity Framework 5中。 问题是我只能将结果映射为模型类型中的复杂类型或实体。 我需要在实体中使用Navigation属
1回复

实体框架存储过程返回类型已更改

我主要通过删除.EDMX文件并再次添加来更新数据模型,以确保获得数据库中的所有内容。 我遇到一个奇怪的问题,在删除并重新添加.EDMX之后,其中的存储过程返回类型之一已更改。 存储过程代码保持不变,可以在下面找到。 我不确定我做错了什么? SQL Server存储过程(从未更改)
2回复

存储过程不返回任何列

我有以下存储过程: 在实体框架中,当我尝试在函数导入时将其映射为复杂类型时,它说 所选的存储过程不返回任何列 我已经在互联网上阅读了有关此内容的信息,发现需要将SET FMTONLY OFF设置为,但是如您所见,它不起作用。 有任何想法吗? 编辑 :
1回复

映射未命名存储过程列

我有一个存储过程: 当我从这样的应用程序调用此存储过程时 我有一个例外 数据读取器与指定的“ RelativityModel.sp_MoodTester_Result”不兼容。 类型“ Column1”的成员在数据读取器中没有具有相同名称的对应列。 然后我尝试
1回复

实体框架-调用存储过程而不映射

我目前使用的是使用实体框架(EF)的数据库优先方法。 我正在研究使用EF调用存储过程(与实体无关的存储过程)的不同方法。 目前,我使用的方法在这里找到使用设计器(在这种方法中,我输入一个存储过程,创建一个函数,进口和使用的复杂类型作为我映射对象)。 我不喜欢它,因为它依赖于膨胀的EDMX文
1回复

如何将结果从存储过程映射到对象

我正在使用EF从MS SQL中的存储过程中获取数据。 存储过程正在返回表。 (列与我的对象中的属性具有相同的名称) 没有实体框架,有没有办法做到这一点? (使用SqlCommand) 谢谢。
2回复

使用EF(数据库优先)将DateTime参数传递给存储过程

我在SQL Server 2012中创建了一个存储过程 我想像这样使用EF来调用此过程: var sp = db.select_alltypes(new DateTime (2016-07-01), new DateTime (2016-07-28)).ToList(); 每