‫我们会回来的｡
‫现在我们已经设置好了一切, 接下来可以创建第一个代码了｡
‫好吧, 我们有一些代码, 但它不是我们期待的魔法｡
‫对不对？
‫现在我们继续创建一个方法, 它将university插入到university表中, 因为我们有university表,
‫如果我们签出数据｡
‫所以打开表定义时, 它不是一个一个的, 而是打开或显示表数据｡
‫如果我们这样做, 我们会看到它是空的｡
‫所以我们还不知道, 还没有名字, 但是我们要用代码来改变它｡
‫所以让我们创建一个新的方法, 它将是一个公共空白, 插入大学, 这个方法应该简单地插入大学｡
‫一旦我们调用它, 它就会将大学添加到我们的university表中｡
‫现在在这里, 我要做的是我首先需要一所大学｡
‫而为了使用这个大学类, 因为我们没有创建大学类｡
‫好吧, 我知道了
‫我想使用大学的对象｡
‫我需要继续我的链接到SQL数据, 类, 数据库, HTML和拖动大学在这里｡
‫所以我从我的表中拖动university, 现在我可以继续在这里使用university｡
‫所以这需要一点时间, 但是现在你可以看到它是绿色的, 现在我们可以使用它｡
‫现在, 让我们继续创建一个对象｡
‫我打算把它命名为耶鲁, 这将是一所新的大学｡
‫这个耶鲁的东西应该有个名字｡
‫如你所见耶鲁有个名字｡
‫这很酷, 因为当我们可以访问它的ID时, 我们可以访问它的名称,
‫这样我们就可以访问我们已经设置的所有属性｡
‫当我们设置这些属性时, 我们在表中进行了设置｡
‫因此, 您可以在表中创建对象, 这非常酷｡
‫所以你可以简单地使用这个链接到SQL数据类, HTML, 然后把你的表拖到这里, 它就会为你创建类｡
‫这很酷｡
‫现在我们可以使用这个名字我将把它设置为耶鲁.
‫现在, 为了使用这个名称将Yale插入到我的数据表中, 我需要继续并使用我们在上一个视频中设置的数据上下文｡
‫这里有一个链接到数据上下文, 这里是universities, 这里有一个属性叫universities, 它包含了这个方法,
‫在提交时插入.
‫我们要插入什么？
‫嗯, 一个大学的实体, 我想进入的实体是耶鲁大学｡
‫我在这里实际上是把数据输入到我的大学表中｡
‫这段代码就是这么做的｡
‫这很棒, 不是吗？
‫因此, 为了提交这些更改, 我只需在数据上下文中执行一些操作, 即可提交更改｡
‫所以现在我提交这些更改, 也就是说我在提交时提交这个插入｡
‫如您所见, 只有在提交后才能插入｡
‫在我现在提交的这一行中,
‫为了在我的表中显示大学, 我需要调用我的主数据网格, 并将其项源设置为数据上下文thoughtuniversities｡
‫好, 如果我们检查它是什么, 那么, 主数据网格在我们XAML文件中
‫此数据网格当前是否为？
‫它没有任何数据｡
‫里面很空｡
‫好吧, 我知道了
‫但正是在这个数据网格中, 我们将名称设置为主数据网格, 现在我们将其项源设置为数据上下文university｡
‫它将显示数据库或表中的所有大学｡
‫所以我将这个方法称为Insert University的方法｡
‫然后运行代码｡
‫如果我这样做, 你会看到我们有这个ID 1和名字Yael在这里｡
‫这就是我们的代码已经做的｡
‫所以还没有SQL条目｡
‫我们不需要使用, 穿着或把东西放进去等等｡
‫我们用代码完成了所有这些, 这很容易｡
‫因此, 您创建了一个对象｡
‫在本例中, 它是一个表名, 您可以向其中添加一些值｡
‫在我们的例子中, 只有名称, 您在提交时插入该名称, 然后提交这些更改｡
‫当然, 如果你想看到一些东西, 你需要设置项目来源为这个数据上下文大学｡
‫所以现在作为一个小挑战, 在表中添加另一所大学, 并运行应用程序｡
‫我希望你试过了｡
‫所以我打算创建一所新的大学｡
‫大学？
‫它将是北京理工大学, 这是一所新的大学｡
‫现在北京理工大学需要一个名字｡
‫所以我打算把它的名字设为像北京科技这样的东西｡
‫当然, 现在我需要在提交时调用Data Context University的Dot insert｡
‫在这种情况下, 我想提交的是北京理工大学｡
‫正如您所看到的, 提交更改也是或只需要一次, 在这里｡
‫这并不全是在提交, 而是在提交｡
‫因此,
‫这个数据上下文提交更改将在我们不需要在每个更改后执行它时执行, 而只需要在我们准备好提交所有这些已准备好的更改时执行它｡
‫好吧, 我会的
‫现在让我们再运行一次｡
‫我们应该可以看到两个条目｡
‫我希望你试过了｡
‫实际上, 我们看到了三个条目｡
‫哇哦｡
‫为什么会这样呢？
‫你可能会想, 我们已经运行过代码了, 现在我们再运行一次｡
‫所以我们再把所有的大学加起来｡
‫那么到底是怎么回事？
‫我们也是这么打算的｡
‫至少在我们的代码里是这样｡
‫这就是我们要做的｡
‫我们添加新的东西｡
‫我们不会说, 好吧, 这是我们想在大学表格中包含的所有内容｡
‫但是我们说, 好吧, 我们加这两行｡
‫所以如果我们执行并再次运行｡
‫或者关闭并执行｡
‫同样, 我们看到耶鲁, 耶鲁, 北京理工, 耶鲁, 北京理工｡
‫现在为了清理它, 为了只保留我们在这里的条目, 只有这两个我们可以做这样的事情｡
‫数据上下文点｡
‫执行命令, 这里我们简单地使用SQL代码从Universe C T中删除｡
‫所以这里需要正确书写｡
‫所以从大学里删掉｡
‫因此, 我只需删除所有条目, 然后再添加它们｡
‫所以现在我们应该只有两个条目了｡
‫所以只有耶鲁和北京, 如你所见, 耶鲁在北京｡
‫但是, 正如你所看到的, ID没有改变｡
‫所以它还在继续上升｡
‫我们之前的所有条目都被删除了, 但ID没有恢复到它的初始值｡
‫所以这是你需要记住的｡
‫好吧, 我会的
‫现在您知道如何在其中插入数据了｡
‫现在有一个小挑战, 插入学生, 是的, 当然你可以尝试这样做, 但这会有一点困难,
‫我会说现在有点太难了, 我会给你看｡
‫让我们创建一个新的方法, 我将其命名为insert students｡
‫于是公开作废插入学生｡
‫因为我想在这里使用一个lambda表达式｡
‫我们还没有使用lambda, 或者根本没有, 这取决于你在这门课上学到了多少｡
‫所以我也会用到这里的一所大学｡
‫我将创建一个耶鲁大学, 但我将使用数据上下文, dot universities, 所以这个属性｡
‫如果我打开它, 你可以看到, 这里有很多不同的方法,
‫我想用的方法是第一个调用的.
‫首先它返回序列的第一个元素｡
‫所以首先要返回一个序列的第一个元素｡
‫所以我可以在这里运行一个lambda表达式｡
‫所以我要做的是我要说N代表大学, 应该给予我一个等同于耶鲁的联合国名字｡
‫这是一条非常短的线, 它可以做很多事情｡
‫所以这是相当长的｡
‫所以它非常类似于, 比方说, 我将要给你们看的这个陈述｡
‫让我们在这里说这个语句｡
‫所以如果我必须用SQL来写它, 它看起来就像大学里的数据环境｡
‫大学所在的大学等于莱茵一耶鲁选择的那所具体的大学｡
‫好吧, 我会的
‫从数据背景下大学, 我们知道那是什么｡
‫这是针对每个循环的｡
‫然后我们说哪里的大学等于一个具体的名字, 然后选择大学｡
‫但我们没有这样做, 我们只是有一段很短的代码, 它做的是完全相同的事情｡
‫所以它会返回大学, 然后检查序列中的第一个条目.
‫所以是过牌｡
‫它会检查第一个名为Yale的条目, 它会把它存储在Yale中因为它的不同之处在于它会返回一个可数的右数.
‫这是一个集合, 如果我们运行该代码, 将返回该集合｡
‫但这行代码最酷的地方在于, 它不是返回集合, 而是返回一个真正的对象,
‫university, 我们可以在后面继续使用｡
‫所以它很强大, 很强大, 代码也很短.
‫所以如果你想知道更多关于这里发生的事情, 那么你应该看看Lambda表达式｡
‫但我现在就这样使用它, 因为lambda表达式有很多｡
‫他们可以做的不仅仅是我们这里的这条线｡
‫但我现在就这样用它｡
‫所以我将对另一所大学做同样的事情, 那就是北京理工大学, 我们像这样搜索北京理工大学｡
‫所以现在我们有两所不同的大学, 北京大学和耶鲁大学｡
‫现在, 我将添加一个完整的学生列表, 而不是将学生单独添加到大学中｡
‫所以我要创建一个完整的学生名单, 并把他们放到正确的大学｡
‫为此, 我将首先关闭服务器资源管理器｡
‫所以我在这里有更多的空间｡
‫现在我将创建一个学生列表, 并将其命名为新得学生列表.
‫所以现在它开始抱怨了｡
‫它不知道学生是什么｡
‫因此, 我们需要做的是将学生从服务器资源管理器拖到这里｡
‫再次打开服务器资源管理器, 将您的学生拖到这里｡
‫我们就这样了｡
‫如你所见, 它们是相连的｡
‫它们通过大学ID连接｡
‫现在我们可以回到我们的代码后面, 过一会儿学生们应该认识到我们是｡
‫现在我们可以用student作为一个类, 或者我们可以用它来创建对象｡
‫那很酷｡
‫因此, 让我们创建一个新条目｡
‫所以我们要使用ADD方法, 它将向名为students的列表中添加一个元素｡
‫我们想在这里补充什么呢？
‫我将添加一个新的student对象｡
‫所以我会说, 好的, 给予我这个完整的学生对象, 其中包含一些信息｡
‫比如说, 卡拉的名字, 女性的性别和年龄｡
‫实际上, 我们不需要年龄, 但我们需要大学的身份证,
‫比如耶鲁大学的.
‫好吧, 我会的
‫就这样｡
‫就像那样｡
‫通过这个条目, 我已经将一个学生添加到我的学生列表中, 我可以使用该学生列表将其添加到我的数据上下文中,
‫方法与我们在这里所做的相同｡
‫所以在提交时插入｡
‫我可以把那些学生拉进来｡
‫它将添加我列表中的所有学生的整个列表｡
‫好吧, 我会的
‫所以这是非常强大和酷的｡
‫但现在另一件很酷的事情是, 我可以直接交给大学本身, 而不是使用大学ID,
‫这样我就可以创建一个新的学生条目｡
‫我会说一个新来的学生,
‫名字叫托尼, 性别是男, 然后是大学｡
‫正如你所看到的, 有一个叫大学的地方, 我可以说它应该是北京, 或者在这个例子中是耶鲁｡
‫假设托尼在耶鲁, 我们就这么写.
‫托尼在耶鲁, 现在我要再增加一些学生.
‫如您所见, 在本例中, 我们使用了该大学ID, 现在我们使用的是该大学,
‫两者都很好, 因为它们彼此相连｡
‫一所大学有一个特定的ID, 我们在这里使用它们几乎是一样的｡
‫现在我要再多加一些｡
‫Layla将是女性, 她的大学将是北京理工大学, 最后一个将是詹姆斯｡
‫詹姆斯是变性人｡
‫所以我们这里也有三种性别｡
‫而这一个将是北京理工大学｡
‫好吧, 我会的
‫这样我们就可以很容易地插入学生｡
‫现在来点小挑战｡
‫将其添加到数据上下文中｡
‫好吧, 我会的
‫我希望你试过了｡
‫提交时数据上下文点学生点插入全部｡
‫这里我们在提交时使用了insert, 它只是一个条目, 但是现在insert all和submit需要i枚举,
‫所以list I枚举接受list.
‫所以这个列表是list类型的, 但是它是一个通用的连接, 所以我们可以用同样的方法在这里使用它｡
‫我们可以在这里交出一个连接集合, 它将是我的学生｡
‫所以就这样提交学生｡
‫当然, 我们需要提交更改｡
‫所以提交这样的修改｡
‫现在我的主数据网格应该是项目源项目源｡
‫在这个例子中, 它是我的数据上下文点｡
‫所以现在我想看看我年级的学生, 应该是那些给学生的｡
‫现在让我称之为插入学生而不是插入大学｡
‫把你们这些学生插进来｡
‫现在, 让我们运行代码, 我们应该在表中看到四个条目｡
‫现在, 如您所见, 我们有ID､ 姓名､ 性别､ 大学ID和大学,
‫在本例中是指向SQL University的链接｡
‫它是一个链接到SQL University的对象, 所以它不会告诉我们大学的实际名称.
‫好吧, 我会的
‫但这是我们在这里和这里设置的东西｡
‫所以我们说是北京工业大学｡
‫是北京工业大学｡
‫但这些都是大学的东西, 它们不等于名字｡
‫所以他们不仅仅是名字｡
‫他们是真正的大学对象在那里｡
‫但除此之外, 你可以看到, 我们有Carla, Toni, Layla, Layla, Jane,
‫嗯, 我没有把名字写对, 但我们也有性别和大学ID,
‫你可能还记得, 大学ID 6是耶鲁大学, 大学ID 7是北京理工大学｡
‫那是因为我删除了条目｡
‫然后我多次调用这个insert university方法, 这就是为什么我们有那些ID而不是一个和两个｡
‫好吧, 我会的
‫所以如果我们检查数据, 我们应该会看到同样的结果｡
‫那就这么办吧｡
‫让我们来看看我们的学生数据｡
‫显示表数据或数据表｡
‫我们看到卡拉是女性｡
‫您还可以看到大学ID
‫所以没有额外的栏目叫大学｡
‫这也是我们刚刚用代码设置的内容｡
‫因此, 我们并没有永久创建它们, 而是在此处设置它们并显示它们,
‫因为数据上下文包含我们在此处添加的它们, 您可以看到｡
‫好吧, 我会的
‫这是关于welllink的很多内容, 不仅如此, 我们还在这段代码中使用了lambda函数,
‫我们将在下一个视频中做更多的介绍｡
‫所以不用担心, 你会习惯的｡
‫在下一个视频中, 我们将在学生和课堂之间加入一张桌子.
‫所以我们要添加学生, 我们要给学生添加课程, 等等.
‫下一段视频再见｡