关于Entity Framework使用存储过程的问题。。

问题描述

有有些问题,还望各位大神指教:1.在使用entitydatamodel创持久化模型之后,自己写了一个存储过程insert()方法,结果在自动生成的design.cs却没有。。但是如果返回的是一个数据表对象比如说表名称为Customer。。。创建的相应的模型为Customer对象,如果我用sql语句返回的是select*fromXXX,返回的是一个Customer对象的话,这个就会出现在design.cs中。。。怎么解决这个问题。。。UserAccountuser=newUserAccount();user=UserAccountsData.SelectById(1);//意思差不多就是这个了。。。2.大家对entityframework的看法,在我看来可能就是很好的把数据对象抽象出来了吧。。。但是可能就是开发效率上更加好了。省的自己写model,自己一个一个的写对应的数据表对象了。。。求大家指教。。。。

解决方案

解决方案二:
没明白你说的意思,你自己写的存储过程,如果返回的不是表对象,你就直接把存储过程拖到设计器中,就ok了啊,为什么会没有呢...
解决方案三:
引用1楼chengzq的回复:

没明白你说的意思,你自己写的存储过程,如果返回的不是表对象,你就直接把存储过程拖到设计器中,就ok了啊,为什么会没有呢...

就是下面这个是自动生成的。。。publicglobal::System.Data.Objects.ObjectResult<UserAccount>UserAccounts_SelectById(global::System.Nullable<int>id){global::System.Data.Objects.ObjectParameteridParameter;if(id.HasValue){idParameter=newglobal::System.Data.Objects.ObjectParameter("Id",id);}else{idParameter=newglobal::System.Data.Objects.ObjectParameter("Id",typeof(int));}returnbase.ExecuteFunction<UserAccount>("UserAccounts_SelectById",idParameter);}上面返回的是UserAccountOBJECT对象,所以在这个文件中有,但是你如果把insert的一个存储过程拖到这个entitymodel中,在这个designer文件中是没有的。。。。

时间: 2024-07-31 19:46:34

关于Entity Framework使用存储过程的问题。。的相关文章

Entity Framework:存储过程 &amp;amp;&amp;amp; EDM

存储过程(sp)在EDM中的使用,相比于sp在EDM中的functionImport,似乎我更关心sp在EDMX文件中的表现. 当我将存储过程sp GetOrder添加到EDM并完成FunctionImport之后,我就可以打开EDMX文件,查看关于GetOrder在ssdl(),csdl,c-s mapping中的实现: sdl: <Function Name="GetOrder" Aggregate="false" BuiltIn="false&

在Entity Framework中使用存储过程(二):具有继承关系实体的存储过程如何定义?

在<实现存储过程的自动映射>中,我通过基于T4的代码生成实现了CUD存储过程的自动映射.由于映射的都是基于数据表结构的标准的存储过程,所以它们适合概念模型和存储模型结构相同的场景.如果两种模型存在差异,在进行数据更新操作的时候就会出错.本篇文章主要介绍当概念模型中具有继承关系的两个实体映射到数据库关联的两个表,如何使用存储过程. 目录 一.创建具有继承关系的实体 二.基于继承关系实体的查询与更新 三.映射标准的CUD存储过程 四.修正存储过程 一.创建具有继承关系的实体 假设数据库中有如下两个

在Entity Framework中使用存储过程(四):如何为Delete存储过程参数赋上Current值?

继续讨论EF中使用存储过程的问题,这回着重讨论的是为存储过程的参数进行赋值的问题.说得更加具体一点,是如何为实体映射的Delete存储过程参数进行赋值的问题.关于文中涉及的这个问题,我个人觉得是EF一个有待改进的地方,不知道各位看官是否同意? 目录 一.EF存储过程参数赋值的版本策略 二.Delete存储参数就一定是Original值吗? 三.如果直接修改.edmx模型的XML呢? 四.为Delete存储过程参数赋上Current值,如何做得到? 一.EF存储过程参数赋值的版本策略 和传统的基于

Entity Framework 6:专家版本

随着 Entity Framework 最新主版本 EF6 的推出,Microsoft 对象关系映射 (ORM) 工具达到了新的专业高度,与久负盛名的 .NET ORM 工具相比已不再是门 外汉. EF 已经完全成熟,正在超越以前广泛使用的工具. Entity Framework 已经度过了青涩期,它最初只是供数据库开发者使用的工 具,后来在 .NET 社区的敏捷开发者中间引起轰动. 它学会了如何摆脱应用程序 开发模式,转向了普通旧 CLR 对象 (POCO) 模型,支持以测试和域为中心的软件

Entity Framework学习初级篇1--EF基本概况

最近在学习研究微软的EF,通过这时间的学习研究,感觉这个EF目前来说还不是很完善,半成品.不过,据说在.Net4.0中,微软将推荐使用此框架,并会有所改善.而且,现在基本上所有数据库均提供了对EF的支持.因此,为以后做技术准备可以学习研究以下.但是,我个人觉得就目前来说,在实际项目慎用此框架. 下面简单的介绍以下这个EF. 在.Net Framework SP1微软包含一个实体框架(Entity Framework),此框架可以理解成微软的一个ORM产品.用于支持开发人员通过对概念性应用程序模型

看看Entity Framework 4生成的复杂的分页SQL语句

之前发现Entity Framework 4生成的COUNT查询语句问题,今天又发现它生成的分页SQL语句问题,而LINQ to SQL却不存在这个问题. >>> 来看一看,瞧一瞧! 上代码: 看生成的SQL语句: 1. Entity Framework生成的SQL: 一个TOP,三个FROM. 2. LINQ to SQL生成的SQL: 无TOP,两个FROM. 两者的差距一目了然. >>> 再来看一个: 将上面代码中Where的查询条件改为常量,即Where(cod

在Entity Framework 4中映射现有实体类(POCO)

Entity Framework的全称是ADO.NET Entity Framework,是微软开发的基于ADO.NET的ORM(Object/Relational Mapping)框架. Entity Framework的主要特点: 1. 支持多种数据库(Microsoft SQL Server, Oracle, and DB2): 2. 强劲的映射引擎,能很好地支持存储过程: 3. 提供Visual Studio集成工具,进行可视化操作: 4. 能够与ASP.NET, WPF, WCF, W

Entity Framework 6.1-Database First介绍

原文:Entity Framework 6.1-Database First介绍 这种方式是比较传统的以数据库为核心的开发模式.比较适合有数据库DBA的团队.或者数据库已存在的情况. 优缺点: 1.优点:编辑代码最少的方式,在有完整的数据库的前提下,你几乎可以不编辑任何代码就能完成应用程序的数据层部分(EF). 2.不够灵活,域模型结构完全由数据库控制生成,结构不一定合理:受数据库表和字段名影响,命名不规范. 创建步骤:1.在程序中新建DAL文件夹(或者单独创建DAL工程), 2.DAL文件夹点

[翻译] - &lt;Entity Framework&gt; - 直接执行数据库命令

原文:[翻译] - <Entity Framework> - 直接执行数据库命令 纯属学习上的记录, 非专业翻译, 如有错误欢迎指正! 原文地址: http://msdn.microsoft.com/en-us/library/gg715124(v=vs.103)   使用 EF 4.1 或者更新版本, 你可以直接执行任何数据库命令. 在本节介绍的方法允许你对数据库执行原生的 SQL 命令.   通过 SQL 查询语句获取实体对象集 DbSet 类中的 SqlQuery 方法允许你执行一个返回