syntax - 初学者的 Entity Framework 语法

任何人都可以帮我解决一个一般的 Entity Framework 问题吗?我是一个新手,试图通过阅读和试错来自学。但是,我真的对所有语法和术语感到困惑。而且我谷歌越多,我就越困惑!

  1. 语法中使用的那些小箭头 (=>) 到底是什么?而且我什至不确定语法的名称是什么......它是 Entity Framework 语法吗? Linq to 方法语法? Linq to Entity 语法?

  2. 为什么在使用该语法时似乎可以使用随机字母?下面的“f”似乎可以与任何字母互换,因为无论我键入什么字母,Intellisense 都会为我提供选项。那么无论如何,这封信应该代表什么?似乎没有声明。

    var query = fruits.SelectMany(f => f.Split(' '));

  3. 是使用带小箭头的语法更好,还是使用我一直看到的“伪 SQL”更好,如下所示。这样看起来比较容易理解,但这算不算Real Entity Framework Way?

    var query = from f in fruits from word in f.Split(' ') select word;

  4. 而且,对于他们中的任何一个 - 是否有任何文档?我一直在互联网上搜索教程、文章和任何东西,但所有返回的都是带有小箭头或伪 SQL 的小示例查询,除了“这里是如何进行选择:”之外没有任何解释:

如果有任何指导或帮助,我将不胜感激。我想如果我能找到从哪里开始,那么我就可以从那里开始建立自己。谢谢!

最佳答案

没有真正的实体方法,有 LINQ 和 LINQ 扩展方法,我认为这看起来更清晰。此外,您不仅可以将 LINQ 与 EE 一起使用。

Language Integrated Query

LINQ extends the language by the addition of query expressions, which are akin to SQL statements, and can be used to conveniently extract and process data from arrays, enumerable classes, XML documents, relational databases, and third-party data sources. Other uses, which utilize query expressions as a general framework for readably composing arbitrary computations, include the construction of event handlers2 or monadic parsers.3

1 它被称为 lambda 表达式,它基本上是一个匿名方法。

Exploring Lambda Expression in C#

2 您可以使用任何您想要的东西,单词或字母,任何对参数有效的名称,因为那是参数

3 我发现 LINQ 扩展方法更简洁,老实说,我最不想看到的是代码中的类似 SQL 的语句。

4 一个好的开始可以在这里找到

101 LINQ SAMPLES

https://stackoverflow.com/questions/17076612/

相关文章:

r - 对固定大小的 block 进行简单平均

amazon - master m3u8播放列表中的bandwidth属性是如何确定的?

MSMQ - 看不到公共(public)队列

usb - 通过 USB 线的模拟信号

.htaccess - 500 内部服务器错误而不是 404

text - 用负值归一化向量

r - 有没有办法在 R 中为每个顶点分配多个标签

emacs - 在 Emacs 初始化文件中添加一个 TeX 符号

c# - LINQ: "Types in Union or Concat are construct

response - 如何在 mirth 中从另一个 channel 获得 Response