C#中LINQtoSQL只能在.NetFramework下使用,不能在.net 下使用

news2024/11/26 12:31:22

目录

一、在net7.0下无法实现LINQtoSQL

1.VS上建立数据库连接

2.VS上创建LINQtoSQL

二、在.NetFramework4.8下成功实现LINQtoSQL

1.VS上建立数据库连接

2.VS上创建LINQtoSQL

三、结论

四、理由


        本文是个人观点,因为我百般努力在.net7.0下无法实现LINQtoSQL的使用,而在.NetFramework4.8却能屡试不爽。如果哪位网友实现了在.net7.0下LINQtoSQL应用,请发表或与我互动。

一、在net7.0下无法实现LINQtoSQL

        新建Windows窗体应用解决方案,项目名称05_1(例子的名称,下同),解决方案名称05_1,框架.net7.0。

1.VS上建立数据库连接

         先在SSMS上建立数据库db_CSharp的连接,其方法已在本作者的其他文章中涉及,不在赘述。

        在新建的05_1项目中建立数据库连接:工具→连接到数据库→数据源:Microsoft SQL Server (SqlClient)→服务器名,按SSMS里的服务器名称手动写入,不要刷新,一般情况下刷新的结果无效,比如desktop-3lv13fs→Windows身份验证→数据库名称:手动输入SSMS中已经建立的数据库名称,比如db_CSharp→测试连接,成功,则确定。

2.VS上创建LINQtoSQL

        右侧,资源管理器 → 鼠标选中项目名称→右键,新建项,数据,LINQtoSQL类→添加→双击在自动生成的DataClasses1.dbml,双击该文件,在弹出窗口中从左侧服务器资源管理器,刚才新建的数据库连接db_CSharp中拖拽tb_Employee到此窗口的左侧第一窗口,保存DataClasses1.dbml → 右侧,资源管理器中自动更新DataClasses1.dbml,其下新增DataClasses1.designer.cs,其下新增tb_Employee。说到这里都没错,但是,接着要说的就是.net7.0不支持LINQtoSQL的地方了。→,同样位置,自动新增生成Properties,在Properties下只有一个文件Settings.settings。这种结果是不对的,没有自动生成完整的Properties文件,导致打开DataClasses1.designer.cs后一片红警,提示缺少using文件的支持。

二、在.NetFramework4.8下成功实现LINQtoSQL

        新建Windows窗体应用(.NetFramework)解决方案,项目名称05_2(例子的名称,下同),解决方案名称05_2,框架.NetFramework4.8。

1.VS上建立数据库连接

        建立方法同上。本机电脑和IDE已经建立,不需要重建,刷新一下确认连接即可。

2.VS上创建LINQtoSQL

        新建项目05_2打开后,明显的区别是,右侧,资源管理器中自动生成Properties,在Properties有三个文件:Settings.settings、Resources.resx、AssemblyInfo.cs。如果是纯净的VS首次安装数据库连接,也会在首次安装后自动生成完整的Properties的三个文件。(我错过了记录,再次创建的时候VS就已经有数据库连接了,网友可以尝试的)

        然后,右侧,资源管理器 → 鼠标选中项目名称→右键,新建项,数据,LINQtoSQL类→添加→双击在自动生成的DataClasses1.dbml,在自动弹出窗口中从左侧服务器资源管理器,刚才新建的数据库连接db_CSharp中拖拽tb_Employee到此窗口的左侧第一窗口,保存DataClasses1.dbml → 右侧,资源管理器中自动更新DataClasses1.dbml,其下新增tb_Employee。 

        在.NetFramework4.8实现LINQtoSQL连接顺畅无比,生成上例,会显示一个空表。

三、结论

        在.net下无法实现LINQtoSQL的使用,而在.NetFramework下却能屡试不爽。(我怀疑适用于任何版本)

四、理由

        微软对LINQtoSQL停止更新或更新与.net不同步。

        LINQ是从.NET Framework3.0开始,.NET平台上引入的一种新式语言特性。.NET Framework4.8是.NET Framework的最后一个版本。NET Framework停止更新后微软就进入了.net的时代。.net下微软主推的ORM解决方案是Entity Framework。

参考文献:.NET的历史介绍_.net版本-CSDN博客 https://blog.csdn.net/qq_54750179/article/details/128672139

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1170652.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

自动化测试篇:Java+selenium+appium自动化测试详解

一、启动测试机或者Android模拟器(Genymotion俗称世界上最快的模拟器,可自行百度安装) 同时,我也准备了一份软件测试视频教程(含接口、自动化、性能等),需要的可以直接在下方观看,或…

JAVA智慧工地管理系统源码基于微服务

智慧工地是将互联网的理念和科技引入施工现场,从施工现场源头抓起,大程度的收集人员、安全、环境、质量等关键业务数据。通过结合物联网、大数据、互联网、云计算等技术建立云端大数据管理平台,形成端云大数据的体系与模式,这就是…

thinkphp漏洞复现

thinkphp漏洞复现 ThinkPHP 2.x 任意代码执行漏洞Thinkphp5 5.0.22/5.1.29 远程代码执行ThinkPHP5 5.0.23 远程代码执行ThinkPHP5 SQL Injection Vulnerability && Sensitive Information Disclosure VulnerabilityThinkPHP Lang Local File Inclusion ThinkPHP 2.x 任…

20.6 OpenSSL 套接字分发RSA公钥

通过上一节的学习读者应该能够更好的理解RSA加密算法在套接字传输中的使用技巧,但上述代码其实并不算完美的,因为我们的公钥和私钥都必须存储在本地文本中且公钥与私钥是固定的无法做到更好的保护效果,而一旦公钥与私钥泄密则整个传输流程都将…

开源检测数据库是否明文存储工具——OpenDLP的使用教程

前言 这些天Darren洋在做项目安全test调研的过程中,发现了一款非常不错的可自定义敏感数据类型的检测数据库是否明文存储工具。 OpenDLP 是一个开源项目,提供用于数据丢失预防(DLP)的工具。它允许自定义扫描规则,包括对…

一、Hadoop初始化配置(final+ubuntu保姆级教程)

1、配置虚拟机 三台虚拟机,分别为node1、node2、node3,内存分别为4G、2G、2G,现存最好为(>40G),如下: 2、修改主机名 分别打开三台虚拟机,root用户输入一下命令: no…

openLayers--绘制多边形、获取视图的中心点、获取当前地图等级、设置地图等级

openLayers绘制多边形、获取视图中心点 前言效果图1、导入LineString2、创建添加多边形3、定义多变形样式4、获取当前视图的中心点5、获取当前视图等级6、设置地图等级 前言 上一篇文章在vue项目中绘制了openlayers绘制了地图和标记点,本篇文章讲解openlayers绘制多…

Java医院HIS系统源码

Java医院HIS系统源码 项目描述 该项目是用springbootlayuishiro写的医院管理系统,该系统的业务比较复杂,数据库一共有36张表。项目的视频业务参考文档,都在百度云盘中。可以先看看视频和参考文档。 运行环境 jdk8mysqlIntelliJ IDEAmaven…

Docker学习——③

文章目录 1、Docker Registry(镜像仓库)1.1 什么是 Docker Registry?1.2 镜像仓库分类1.3 镜像仓库工作机制1.4 常用的镜像仓库 2、镜像仓库命令3、镜像命令[部分]4、容器命令[部分]4.1 docker run4.2 docker ps 5、CentOS 搭建一个 nginx 服…

英伟达显卡深度学习训练微调环境安装清单

可以考虑 安装完操作系统后,安装更新及其他基础软件如gcc cmake, 再安装英伟达几件套(这里列出了四个) 如果自带的python版本在3.8或以上,再安装python常用库。 python版本不能太低,看你要跑的代码的需求了…

Leetcode-70 爬楼梯

递归公式方法会出现超时(时间复杂度大于On^2) 方法一:依然使用递归思想,由于递归过程中会出现反复计算问题,所以定义两个变量分别记录f(n-1)和f(n-2)的值,避免重复计算,减小时间复杂度 class …

mysql索引深度学习

索引是什么? 索引是一种用于加快查询和索引的数据结构,其本质上就是一种排序好的数据结构,就类似书的目录。 索引的底层有多种实现的结构:b树,b树,Hash,红黑树。InnoDB和MyISAM的索引都是通过…

【安全】Java幂等性校验解决重复点击(6种实现方式)

目录 一、简介1.1 什么是幂等?1.2 为什么需要幂等性?1.3 接口超时,应该如何处理?1.4 幂等性对系统的影响 二、Restful API 接口的幂等性三、实现方式3.1 数据库层面,主键/唯一索引冲突3.2 数据库层面,乐观锁…

Flink SQL 窗口聚合详解

1.滚动窗⼝(TUMBLE) **滚动窗⼝定义:**滚动窗⼝将每个元素指定给指定窗⼝⼤⼩的窗⼝,滚动窗⼝具有固定⼤⼩,且不重叠。 例如,指定⼀个⼤⼩为 5 分钟的滚动窗⼝,Flink 将每隔 5 分钟开启⼀个新…

Activiti7工作原理

Java Activiti是一个开源的工作流引擎,用于管理和执行业务流程。 它是基于BPMN 2.0标准的,提供了丰富的功能和灵活性。 Java Activiti的工作原理如下: 1.Java Activiti 流程建模 使用BPMN 2.0标准的图形化编辑器,可以创建和定义…

基于饥饿游戏算法的无人机航迹规划-附代码

基于饥饿游戏算法的无人机航迹规划 文章目录 基于饥饿游戏算法的无人机航迹规划1.饥饿游戏搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要:本文主要介绍利用饥饿游戏算法来优化无人机航迹规划。 …

Docker容器技术实战3

8、docker原生网络 Docker原生网络基于Linux桥接技术和虚拟网络接口,使用了Linux内核的网络功能。每个Docker容器都有自己的网络命名空间,这使得容器之间可以使用独立的IP地址,并隔离了容器的网络栈。 当创建一个Docker原生网络时&#xff…

Apache Flink 1.12.0 on Yarn(3.1.1) 所遇到的問題

Apache Flink 1.12.0 on Yarn(3.1.1) 所遇到的問題 新搭建的FLINK集群出现的问题汇总 1.新搭建的Flink集群和Hadoop集群无法正常启动Flink任务 查看这个提交任务的日志无法发现有用的错误信息。 进一步查看yarn日志: 发现只有JobManager的错误日志出现了如下的…

JOSEF约瑟 数显三相电压继电器 HJY-931A/D 导轨安装

名称:数字交流三相电压继电器型号:HJY-93系列品牌:JOSEF约瑟电压整定范围:10~450VAC额定电压:200、400VAC功率消耗:≤5W HJY系列 数字交流三相电压继电器 系列型号 HJY-931A/D数字式交流三相电压继电器&am…

吴恩达《机器学习》5-6:向量化

在深度学习和数值计算中,效率和性能是至关重要的。一个有效的方法是使用向量化技术,它可以显著提高计算速度,减少代码的复杂性。接下来将介绍向量化的概念以及如何在不同编程语言和工具中应用它,包括 Octave、MATLAB、Python、Num…