感觉linq to sql要求太严格了

问题描述

1.要求字段类型必须完全一模一样。2.没有主键,更新等操作还没有任何效果。3.报的错,详细信息根本查不到源头。直接提示我int32转换string失败。本来想尝尝鲜,用用这个Linqtosql,然后,发现工期变长了。。得不偿失。。哎。。

解决方案

解决方案二:
这年头用linqtosql还叫"尝鲜"?既然想用新的东西就先了解清楚规则再使用哦。。。1.要求字段类型必须完全一模一样。linqtosql不是先映射数据库实体的么(.dbml)?难道你自己手写的实体类?2.没有主键,更新等操作还没有任何效果。数据库都不设主键,如何识别唯一性?3.报的错,详细信息根本查不到源头。直接提示我int32转换string失败。你难道在lambda里直接int.ToString()?这就你自己处理方法问题了,直接查看linq语句生成的sql很容易排错
解决方案三:
奇怪,为何我用的时候觉得十分顺手,工作效率大幅提升
解决方案四:
引用2楼bigbaldy的回复:

奇怪,为何我用的时候觉得十分顺手,工作效率大幅提升

你用过代码生成器没有?用代码生成器,效率就会提升很多
解决方案五:
引用3楼jhdxhj的回复:

Quote: 引用2楼bigbaldy的回复:
奇怪,为何我用的时候觉得十分顺手,工作效率大幅提升

你用过代码生成器没有?用代码生成器,效率就会提升很多

你是不是回错了?
解决方案六:
引用2楼bigbaldy的回复:

奇怪,为何我用的时候觉得十分顺手,工作效率大幅提升

我是刚开始学,觉得也很好呢,省去了一大堆原来ado的东西
解决方案七:
有利有弊,但总的来说,开发速度提高多了,虽然linqtosql现在已经被抛弃
解决方案八:
你觉得效率低可能是了解皮毛又没经验直接拿来用了。。。下个项目你再用就不这么认为了
解决方案九:
引用楼主zodiackiller2014的回复:

1.要求字段类型必须完全一模一样。2.没有主键,更新等操作还没有任何效果。3.报的错,详细信息根本查不到源头。直接提示我int32转换string失败。本来想尝尝鲜,用用这个Linqtosql,然后,发现工期变长了。。得不偿失。。哎。。

兄弟,就是效率高,我才用这个的。表里面的字段太大,SQL太难记,SQL返回太难处理,自己搞事务上面所有问题LINQTOSQL都给你解决了,我原来在JAVA中用hiberante全手工,工作量大得手抖。用这个后,发现图形上拖一下,点一下就全部自己干完了,效率不知道提高了多少倍。LINQTOSQL是1.0EF是6.0,你应该用EF6了

时间: 2024-12-31 01:33:11

感觉linq to sql要求太严格了的相关文章

在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳

在<在Linq to Sql中管理并发更新时的冲突(2):引发更新冲突>一文中 ,我们描述了Linq to Sql检测在更新时是否产生了冲突的基本方法:将该记录 每个字段原来的值和更新时的值进行对比,如果稍有不同则意味着记录被修改过 ,因此产生了更新冲突.不过您是否有这样的感觉,这种方法实在累赘了一些? 如果一个表中有数十个字段,那么更新就必须完整地检测一遍(不过我会在今后 的文章中提到这方面的控制).再者,如果其中某一个字段储存了洋洋洒洒上万 字的文章,那么在验证时仅仅是将它从Web服务器发

扩展LINQ to SQL

ORM框架在删除数据方面一直有个尴尬,那就是无法通过指定条件批量删除数 据(当然这本不是ORM的问题,只是使用上感觉不方便).于是对于一些删除操 作,我们不得不写SQL语句或者执行存储过程,例如: ItemDataContext db = new ItemDataContext(); db.ExecuteCommand( "DELETE FROM Item WHERE [CreateTime] < {0}", DateTime.UtcNow.AddMonths(-1)); 我始终

LINQ to SQL异步查询

异步操作是提高Web应用程序吞吐量的重要手段,关于这方面的话题已经在前 文<正确使用异步操作>中解释过了.对于大多数互联网应用来说,性能瓶颈数 据库访问.换句话说,一个请求在数据库操作上所花的时间往往是最多的 --并且占总时间的90%以上.因此,当Web应用程序的吞吐量因为数 据库操作的阻塞而受到影响的话,我们可是尝试使用异步数据库操作来进行优化 . 如果我们使用LINQ to SQL,在默认情况下是无法实现异步查询的,所 有的操作都非常自然--异步是不自然的,因为它把连续的操作拆成 了两段.

在LINQ to SQL中使用Translate方法以及修改查询用SQL

目前LINQ to SQL的资料不多--老赵的意思是,目前能找到的资 料都难以摆脱"官方用法"的"阴影".LINQ to SQL最 权威的资料自然是MSDN,但是MSDN中的文档说明和实例总是显得"大开大 阖",依旧有清晰的"官方"烙印--这简直是一 定的.不过从按照过往的经验,在某些时候如果不按照微软划定的道道来走,可 能就会发现别样的风景.老赵在最近的项目中使用了LINQ to SQL作为数据层的基础,在LINQ to S

LINQ TO SQL中SQLMetal和Mapping文件缺陷

Mapping文件的缺陷 开发LINQ TO SQL,我个人倾向选择外部配置文件的方式进行开发,灵活,(这个也是.Net平台下的建议选择,如果你了解WCF,会更有体会). 利用SQLMeatal开发Mapping文件的时候,在修改Association节的DeleteRule属性的时候,感觉是LING TO SQL的缺陷. MSND: NET Framework 类库 AssociationAttribute..::.DeleteRule 属性 更新:2007 年 11 月 获取或设置关联的删除

LINQ to SQL语句(25)之继承

继承支持 LINQ to SQL 支持单表映射,其整个继承层次结构存储在单个数据库表中.该表包含整个层次结构的所有可能数据列的平展联合.(联合是 将两个表组合成一个表的结果,组合后的表包含任一原始表中存在的行.)每行 中不适用于该行所表示的实例类型的列为 null. 单表映射策略是最简单 的继承表示形式,为许多不同类别的查询提供了良好的性能特征,如果我们要在 LINQ to SQL 中实现这种映射,必须在继承层次结构的根类中指定属性 (Attribute) 和属性 (Attribute) 的属性

LINQ to SQL语句(13)之开放式并发控制和事务

Simultaneous Changes开放式并发控制 下表介绍 LINQ to SQL 文档 中涉及开放式并发的术语: 术语 说明 并发 两个或更多用户同时尝试更新同一数据库行的情形. 并发冲突 两个或更多用户同时尝试向 一行的一列或多列提交冲突值的情形. 并发控制 用于解决并发冲突的技术. 开放式并发控制 先调查其他事务是否已更改了行中的值,再允许提交更改的技术.相 比之下,保守式并发控制则是通过锁定记录来避免发生并发冲突.之所以称作开 放式控制,是因为它将一个事务干扰另一事务视为不太可能发

Asp.net MVC并不仅仅只是Linq to SQL

很多Asp.net的教程中的示例代码使用的数据访问方法是Linq to Sql或是Entity Framework.我在 www.asp.net的论坛上看到很多关于讨论是否有其他替代的数据库访问方式,回答是:当然有.这篇文章 就讲述了使用Ado.Net作为数据访问层来实现一个典型的增删查改程序. 由于是以练习作为目的,那我就不妨借用Spaanjaar's 的N层构架文章(Building Layered Web Applications with Microsoft ASP.NET 2.0.)的

LINQ体验(11)——LINQ to SQL语句之Null语义和String/DateTime方法

在本系列中,主要介绍LINQ to SQL基础的东西,因为LINQ太强大了,它对我 们平常使用不同的数据源有着不同的内容,其包括对于SQL Server 数据库的 LINQ to SQL:对于XML 文档的LINQ to XML:对于 ADO.NET 数据集的LINQ to DataSet:对于.NET 集合.文件.字符串等的LINQ to Objects.例外也出现了 一些对LINQ支持的开源项目,例如LINQ to JSON,LINQ for NHibernate等等. 在这个系列中,一些关