用EF *** 作数据库 对多张表 *** 作是否需要事务

用EF *** 作数据库 对多张表 *** 作是否需要事务,第1张

对多张表进行 *** 作是需要事务的。

事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库 *** 纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体 *** 作组成。

要把Model 转换成SQl 数据库 只能还原出结构出来

类似ORM Model First

找到这个类 对应的属性 跟类名 产生对应的表名+栏位名 的SQl Creat Table 语法

在NET Core 项目钟(类库),使用Entity Framework,建立模型生成数据库时,失败改成 64 位即可假设 ef 代码改成 64位的方法,不要在 VS 上面改,要到 项目目录下更改 csproj 文件

方法/步骤

1

EF的Code First模式不需要我们创建什么数据向导,直接写代码就行了。我们用NET最简单的控制台应用程序来说明。如下图所示

2

下面我们新建两个实体,一个实体是班级对象,一个实体是学生对象,注意这两个对象是一对多的关系,他们的构建如下图所示,注意他们声明上面的属性标识

3

然后我们需要引用两个库,一个就是我们的EntityFramework,另一个就是SystemDataEntity

4

下面就是主要写EF的上下文对象了,如下图所示,需要继承EF的DbContext。注意base里的名字为连接字符串名字,在AppConfig中配置即可。为了说明CodeFirst的魅力,这里我填写的数据库,在数据库中并没有

5

下面我们在主函数中新增班级对象,然后执行EF的SaveChanges方法

6

看一下我们的数据库吧,你会发现数据库中是不是多出来了一个我们在配置文件中写的数据库名字,并且也已经将表创建好了

7

通过以上的步骤,你感觉到EF的Code First模式的魅力了没,自动创建数据库以及表。这也是现在应用最多的模式了,好了,这次分享就到这里。有什么问题的话,留言咨询即可。

给你举个例子:

<pre t="code" l="csharp"> static void Main(string[] args)

{

using (MyDBEntities en = new MyDBEntities())

{

var p1 = enPeopleFirst(x =>

xName == "Jim");

ConsoleWriteLine(p1Age);

var p2 = enDatabaseSqlQuery<Person>(

@"select top 1 from person

where name = 'Jim'")

First();

ConsoleWriteLine(p2Age);

//p1 p2是同一个记录

}

ConsoleReadLine();

}

以上就是关于用EF *** 作数据库 对多张表 *** 作是否需要事务全部的内容,包括:用EF *** 作数据库 对多张表 *** 作是否需要事务、请问.net高手,在不使用EF实体框架的情况下怎样将C#的数据实体类还原成SQL数据库、.netcoreef数据库查询cs1936错误等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9804586.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存