데이터 베이스 MySQL 튜토리얼 Entity Framework SqlFunctions 教你如何在EF调用sqlserver方法

Entity Framework SqlFunctions 教你如何在EF调用sqlserver方法

Jun 07, 2016 pm 03:34 PM
framework

今天算是研究了一天的SqlFunctions,请教了几个群的牛人,居然发现大伙对这个都比较陌生, 有的甚至直指EF中是不能调用sqlserver里的方法的。 因为之前搞过linq to sql 里面的SqlMethod ,所以觉得EF里面必须是可以的。 首先需要简短介绍一下EF6和EF5,当你N

今天算是研究了一天的SqlFunctions,请教了几个群的牛人,居然发现大伙对这个都比较陌生,

有的甚至直指EF中是不能调用sqlserver里的方法的。

因为之前搞过linq to sql 里面的SqlMethod ,所以觉得EF里面必须是可以的。

首先需要简短介绍一下EF6和EF5,当你NuGet一个EF5的包的时候,只有EntityFramework,而EF6确有EntityFramework和EntityFramework.SqlServer,

这2者是有很大区别的。

 

在EF5环境下,我们如何使用SqlFunctions 呢?

首先添加EF环境,在引用中添加Syste.Data.Entity,再添加命名空间

<span>using</span> System.Data.Objects.SqlClient;
로그인 후 복사

然后写一个控制器测试

<span> 1</span> <span>public</span><span> ActionResult Index()
</span><span> 2</span> <span>        {
</span><span> 3</span>             <span>int</span> Count = <span>0</span><span>;
</span><span> 4</span>             <span>using</span> (Models.TestProjectDBEntities db = <span>new</span><span> Models.TestProjectDBEntities())
</span><span> 5</span> <span>            {
</span><span> 6</span>                 <span>var</span> Query = <span>from</span> c <span>in</span> db.AdminInfoes <span>where</span> SqlFunctions.Square(<span>1.00</span>)==c.Orders <span>select</span><span> c;
</span><span> 7</span>                 Count =<span> Query.ToList().Count();
</span><span> 8</span> <span>            }
</span><span> 9</span>             ViewBag.Count =<span> Count;
</span><span>10</span>             <span>return</span><span> View();
</span><span>11</span>         }
로그인 후 복사

运行正常。

 

EF6环境下,

我们的引用中是存在EntityFramework和EntityFramework.SqlServer的,

然后我们添加命名空间

<span>using</span> System.Data.Entity.SqlServer;
로그인 후 복사

注意一下,跟EF5下的命名空间是不一样的,这个地方我也是出现了误区,当我的添加是using System.Data.Objects.SqlClient; 的时候一直报错,

这个错误确实比较奇特,我网上找了很多原因一直没有找到,最后一个偶然的机会,才得到这个结果。

然后我们再运行上面的测试代码,应该也是运行通过的。

 

SqlFunctions里提供了很多的方法,这个都是比较简单的,就不做详细介绍了。<br><br>本群提供ASP.NET MVC,EF,LINQ,WEB API技术支持,不在乎人多,在乎人精。<br>ASP.NET MVC群 171560784  <br>诚邀各路高手、初学者加入。
로그인 후 복사

 

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Microsoft NET Framework 설치 문제 오류 코드 0x800c0006 수정 Microsoft NET Framework 설치 문제 오류 코드 0x800c0006 수정 May 05, 2023 pm 04:01 PM

.NET Framework 4는 개발자와 최종 사용자가 Windows에서 최신 버전의 애플리케이션을 실행하는 데 필요합니다. 그러나 .NET Framework 4를 다운로드하고 설치하는 동안 많은 사용자가 설치 프로그램이 중간에 중지되고 "오류 코드 0x800c0006으로 인해 다운로드에 실패했기 때문에 .NET Framework 4가 설치되지 않았습니다"라는 오류 메시지가 표시된다고 불평했습니다. 장치에 .NETFramework4를 설치하는 동안에도 이 문제가 발생한다면 올바른 위치에 있는 것입니다.

Windows 11/10에서 SetupDiag를 사용하여 Windows 업그레이드 문제를 식별하는 방법 Windows 11/10에서 SetupDiag를 사용하여 Windows 업그레이드 문제를 식별하는 방법 Apr 17, 2023 am 10:07 AM

Windows 11 또는 Windows 10 PC에 업그레이드 또는 업데이트 문제가 있을 때마다 일반적으로 실패의 실제 원인을 나타내는 오류 코드가 표시됩니다. 그러나 오류 코드가 표시되지 않고 업그레이드나 업데이트가 실패하면 혼란이 발생할 수 있습니다. 편리한 오류 코드를 사용하면 문제가 어디에 있는지 정확히 알 수 있으므로 문제를 해결할 수 있습니다. 하지만 오류 코드가 나타나지 않기 때문에 문제를 식별하고 해결하기가 어렵습니다. 단순히 오류의 원인을 찾는 데 많은 시간이 걸립니다. 이 경우 오류의 실제 원인을 쉽게 식별하는 데 도움이 되는 Microsoft에서 제공하는 SetupDiag라는 전용 도구를 사용해 볼 수 있습니다.

SCNotification이 작동을 멈췄습니다. [수정을 위한 5단계] SCNotification이 작동을 멈췄습니다. [수정을 위한 5단계] May 17, 2023 pm 09:35 PM

Windows 사용자는 컴퓨터를 시작할 때마다 SCNotification이 작동을 중지했습니다. 오류가 발생할 수 있습니다. SCNotification.exe는 권한 오류 및 네트워크 오류로 인해 PC를 시작할 때마다 충돌이 발생하는 Microsoft 시스템 알림 파일입니다. 이 오류는 문제가 있는 이벤트 이름으로도 알려져 있습니다. 따라서 이를 SCNotification의 작동이 중지된 것으로 표시되지 않고 버그 clr20r3으로 표시될 수 있습니다. 이 기사에서는 SCNotification이 작동을 중지하여 다시 귀찮게 하지 않도록 수정하기 위해 취해야 할 모든 단계를 살펴보겠습니다. SCNotification.e는 무엇입니까

Microsoft .NET Framework 4.5.2, 4.6 및 4.6.1은 2022년 4월에 지원이 종료됩니다. Microsoft .NET Framework 4.5.2, 4.6 및 4.6.1은 2022년 4월에 지원이 종료됩니다. Apr 17, 2023 pm 02:25 PM

Microsoft.NET 버전 4.5.2, 4.6 또는 4.6.1을 설치한 Microsoft Windows 사용자가 Microsoft에서 향후 제품 업데이트를 통해 프레임워크를 지원하도록 하려면 최신 버전의 Microsoft Framework를 설치해야 합니다. Microsoft에 따르면 세 가지 프레임워크 모두 2022년 4월 26일에 지원이 중단됩니다. 지원 날짜가 종료되면 해당 제품은 "보안 수정 또는 기술 지원"을 받을 수 없습니다. 대부분의 가정용 장치는 Windows 업데이트를 통해 최신 상태로 유지됩니다. 이러한 장치에는 .NET Framework 4.8과 같은 최신 버전의 프레임워크가 이미 설치되어 있습니다. 자동으로 업데이트되지 않는 장치는

Windows 11용 KB5012643으로 인해 .NET Framework 3.5 앱이 중단됨 Windows 11용 KB5012643으로 인해 .NET Framework 3.5 앱이 중단됨 May 09, 2023 pm 01:07 PM

Windows 11용 KB5012643을 설치한 사용자에게 영향을 미치는 새로운 안전 모드 버그에 대해 이야기한 지 일주일이 지났습니다. 이 성가신 문제는 Microsoft가 출시일에 게시한 알려진 문제 목록에 나타나지 않아 모두를 놀라게 했습니다. 글쎄, 상황이 더 이상 악화될 수 없다고 생각했을 때 Microsoft는 이 누적 업데이트를 설치한 사용자에게 또 다른 폭탄을 떨어뜨렸습니다. Windows 11 빌드 22000.652로 인해 더 많은 문제 발생 따라서 기술 회사는 Windows 11 사용자에게 일부 .NET Framework 3.5 응용 프로그램을 시작하고 사용하는 데 문제가 발생할 수 있다고 경고합니다. 익숙한 것 같나요? 하지만 놀라지 마세요.

Cooler Master 및 Framework, 노트북 마더보드와 호환되는 혁신적인 미니 케이스 키트 출시 Cooler Master 및 Framework, 노트북 마더보드와 호환되는 혁신적인 미니 케이스 키트 출시 Dec 15, 2023 pm 05:35 PM

12월 9일 뉴스에 따르면 Cooler Master는 최근 타이페이 컴퓨트 쇼(Taipei Compute Show)의 시연 행사에서 노트북 모듈 솔루션 제공업체인 Framework와 협력하여 미니 섀시 키트를 시연했습니다. 프레임워크 노트북에서. 현재 이 제품은 시중에 판매되기 시작했으며 가격은 39달러로 현재 환율로 약 279위안(한화 약 279위안)에 해당한다. 이 섀시 키트의 모델 번호는 "frameWORKMAINBOARDCASE"로 명명됩니다. 디자인 측면에서는 297x133x15mm 크기로 최고의 컴팩트함과 실용성을 구현합니다. 원래 디자인은 프레임워크 노트북에 원활하게 연결할 수 있도록 하는 것입니다.

Windows 11에서 0xc0000135 오류를 수정하는 방법(KB5013943 업데이트 문제 해결) Windows 11에서 0xc0000135 오류를 수정하는 방법(KB5013943 업데이트 문제 해결) May 11, 2023 am 08:28 AM

0xc0000135 오류는 무엇이며 왜 발생합니까? 공식 Microsoft 문서에 따르면 0xc0000135 오류 코드는 .NetFramework 문제와 관련이 있습니다. .NetFramework3.5가 작동해야 하는 많은 응용 프로그램이 최신 Windows 11 업데이트에서 작동하지 않는 것 같습니다. 이것이 0xc0000135 오류 코드의 원인이며 PC에서 .NetFramework3.5를 활성화하면 이 문제를 해결할 수 있습니다. 대부분의 최신 애플리케이션은 .NetFramework.dll 파일을 사용하여 백그라운드에서 예상대로 실행됩니다. 하지만

Microsoft는 사용자에게 경고합니다. Windows 11 KB5012643으로 인해 앱이 충돌하는 경우 제거하세요. Microsoft는 사용자에게 경고합니다. Windows 11 KB5012643으로 인해 앱이 충돌하는 경우 제거하세요. Apr 15, 2023 pm 08:01 PM

Microsoft는 방금 Windows 11의 안전 모드 문제를 해결했지만 운영 체제는 최신 누적 업데이트에서 추가 문제를 겪고 있는 것으로 보입니다. 다양한 수정 사항이 포함된 선택적 업데이트인 KB5012643은 .NET 3.5 프레임워크의 특정 구성 요소를 사용하는 응용 프로그램의 작동을 중단시킵니다. 오랫동안 Microsoft의 데스크톱 운영 체제를 사용해 왔다면 .NET Framework를 발견했을 것입니다. .NET Framework는 Windows 업데이트나 특정 응용 프로그램 설치 중에 나타날 수 있습니다. 많은 응용 프로그램이 .NET Framework에 의존하여 제대로 작동합니다.

See all articles