在System.Linq命名空间,我们现在可以扩展我们IEnumerable的有Any()和Count() 扩展方法.
最近我被告知如果我想检查一个集合中是否包含一个或多个项目,我应该使用.Any()扩展方法而不是.Count() > 0扩展方法,因为.Count()扩展方法必须迭代所有项目.
其次,一些集合具有属性(未扩展方法),其是Count或Length.使用它们会更好吗,而不是.Any()或.Count()?
是啊/是?
这是我用于实体模型的Linq语法
IQueryable<string> objEmployee = null;
objEmployee = from res in _db.EMPLOYEEs
where (res.EMAIL == givenInfo || res.USER_NAME == givenInfo)
select res.EMAIL;
Run Code Online (Sandbox Code Playgroud)
如何选择多列?就像我想选择res.ID一样.我怎么能收到那些?我认为,IQueryable是行不通的.这被称为Linq to SQL - 对吗?
我正在检查第二版Professional ASP.NET MVC并实现了EF取代LINQ to SQL.我从第一本书中熟悉LINQ to SQL,但我对EF一无所知.无论如何,在阅读代码时,似乎没有任何改变,除了名称.相同的旧存储库类,相同的旧函数.
我做了一点研究.我知道LINQ不仅限于SQL.EF也不限于Microsoft系列SQL服务器.在这个2岁的问题中,人们对EF并不满意,并表示它过于复杂.但现在我在EF名下读相同的代码.只有使用LINQ to SQL的ADO.NET实体模型生成类.任何人都可以清除关于EF功能的大惊小怪,因为它现在是事实上的标准ORM吗?
(编辑:我把它变成了社区维基,因为它更适合协作格式.)
从.NET访问SQL Server和其他数据库有很多种方法.所有这些都有其优点和缺点,它永远不会是一个简单的问题,哪个是"最好的" - 答案永远是"它取决于".
但是,我正在寻找不同层次系统背景下不同方法和框架的高层次比较.例如,我认为对于快速而肮脏的Web 2.0应用程序,答案与内部企业级CRUD应用程序有很大不同.
我知道Stack Overflow上有很多关于这个问题子集的问题,但我认为尝试构建一个汇总比较会很有用.我会尽力更新问题并加以纠正和澄清.
到目前为止,这是我对高层的理解 - 但我确信这是错误的......我主要关注微软的方法来保持这一点.
这些东西是完全不同的还是仅仅是标准ADO.NET的一层? - 如果您有DAL或者实施了LINQ或实体,您真的会使用这些吗?
其他一些相关链接; NHibernate或LINQ to SQL Entity Framework与LINQ to SQL
只是想知道每个人对于什么ORM用于SQL Azure的想法?
我很习惯使用LINQ-to-SQL,我相信它可以让它与SQL Azure一起使用.但是,根据我的理解(如果我错了,请纠正我),在.NET框架的未来版本中,Linq-to-SQL不会有进一步的改进吗?
或者,有实体框架......而且更远离Microsoft Camp的NHibernate.
理想情况下,任何其他建议应该是免费或开源的.我见过Telerik的ORM,但这当然是商业产品.
我可以通过Google搜索获得每个ORM的定义/好处,但我只是对人们对ORM似乎最适合他们的意见感兴趣(即使它不是上述内容)
这是我第一次使用MVC开发,我想让它变得安全.
当我使用HtmlEncode时,它将String转换为等效的HTML String.
用户可以输入搜索例如ali'或ali--并且它们存在于我的数据库中.如何从SQL注入控制我的搜索和登录?
还有任何防止脚本注入的教程或最佳实践?
当Linq-to-Sql首次发布时,我对于不需要真正的多层架构的中小型项目使用了很多.
在我工作的地方,我们现在几乎只使用NHibernate进行真正的域驱动开发.
我正在研究一个小的临时(可能是一年,可能更少)的中间件组件,NHibernate在配置方面感觉有些过度,并使实体保持最新.特别是因为我无法控制数据库,它有时会发生变化,而且它有点"遗留".
最近对DB进行了一些更改,并且NHibernate映射不是很完整.
我认为删除我所拥有的IRepository实现并将其替换为Linq-to-Sql实现可能更容易.然后我可以使用lambdas进行简单的查询,只需拖放表格即可.
在这种情况下,Linq-to-Sql的RAD元素是有意义的.但它本质上是旧技术.我应该不用吗?我从未使用过实体框架.我应该使用它,它是否容易和快速使用?
干杯
我想知道人们对通过LINQ-to-SQL支持实体框架的决定的看法?我有一个我最初在LINQ-to-SQL中开发的应用程序.我发现它是我们应用的完美解决方案.
在尝试移植到实体框架时,我感到非常惊讶.恕我直言,甚至没有准备好迎接黄金时段.没有延迟加载,没有POCO,对继承的可怕依赖.我发现它在我的情况下基本上无法使用,而是决定坚持使用LINQ-to-SQL,直到某种程度上这个实体框架可以变得更加精致.
其他人有类似的经历吗?
我不是数据库管理员或架构师,因此我必须要求那些全天候工作的人.在数据库管理和体系结构的世界中,ORM(对象关系映射)的概念是如何建立的?它是否仍在发生,被广泛认可但仍处于早期阶段,或者通常是否被批准?我正在学习这个领域,并希望了解这个领域的更广泛部分是否能够获得知识.
我在一个项目上工作,想要使用ORM.我应该使用什么:Linq to Sql或Entity Framework?正如我所看到的,Linq to Sql提供了更多机会,例如对枚举类型的支持.然而,也有人说,Linq to Sql是为了Linq的游戏和学习而微软的未来战略在于实体框架.那么我应该使用哪一个?
.net ×6
linq-to-sql ×4
linq ×3
asp.net ×2
c# ×2
orm ×2
sql ×2
.net-3.5 ×1
.net-4.0 ×1
asp.net-mvc ×1
azure ×1
database ×1
mysql ×1
performance ×1
rad ×1