仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1180|回复: 14
打印 上一主题 下一主题

[学习教程] ASP.NET网站制作之办理Entity Framework天生"CAST AS int"SQL语句的成绩仓酷云

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:18:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
有时也搞不懂应该学那种;主要看你以后去的那个公司是使用哪种了。就像王千祥的课上说的:企业应用现在主要就三层(其实也差不多就是MVC):表示层(主要使用html写的,很简单)、业务逻辑层(主要就是应用服务器的)。最后就是数据层(其实就是学习数据库)在EntityFramework天生的SQL语句中,你是不是寄望过CAST的倩影:
  1. (0=CAST([Extent1].[LockFlag]ASint))
复制代码
她不是那末有目共睹,她不是那末让人一眼心动,可是她值得寄望,由于她不同凡响...
之前见过量次,明天出格寄望,并放在了博问中,以吸引更多人的注重,同时也加深本人的注重。
底本希冀的SQL语句是:
  1. [Extent1].[LockFlag]=0
复制代码
如今多了个CAST。多了个CAST有甚么干系呢?它会使得如许的SQL查询不会利用创建在LockFlag上的索引(因为是smallint列,多半情形下不必索引影响也不年夜)。
明天,在猎奇心的使令下,我想晓得为何会呈现这个成绩?在博问中提出成绩以后,终究找到了谜底。
(感悟:将成绩经由过程笔墨明晰地表达出来,成绩就办理了一半)
LockFlag在数据库界说的范例是smallint,以是在界说实体类时,天经地义地用short(或int16)。
可是EntityFramework的设法却不同凡响,它只需碰到short(或int16)范例,就会天生CAST转换为int举行查询。
办理办法:
将short(或int16)范例改成int范例。
该办理办法存在成绩,在where查询中切合请求,但在映照时呈现毛病:
System.InvalidOperationException:TheLockFlagpropertyonArticlecouldnotbesettoaInt16value.Youmustsetthispropertytoanon-nullvalueoftypeInt32.
前天傍晚我发表了《net网页编程的跨平台就是一句谎言。》,原本就是周末闲来无事,发表一篇略带争议性的博文让大家都来吵吵架,发表自己的看法,根本就没想着谁把谁打倒,一个行业或者是技术阵营是无法用短期口水仗打到对手的。
柔情似水 该用户已被删除
沙发
发表于 2015-1-20 20:07:21 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
变相怪杰 该用户已被删除
板凳
发表于 2015-1-24 14:15:24 | 只看该作者
最强的技术支持WebService,而且有.NET的所有library做后盾。而且ASP.NET在.NET3.5中还有微软专门为AJAX开发的功能--ASP.NETAJAX。
蒙在股里 该用户已被删除
地板
发表于 2015-2-1 16:41:35 来自手机 | 只看该作者
CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。
精灵巫婆 该用户已被删除
5#
发表于 2015-2-5 17:25:50 | 只看该作者
关于ASP.NET功能上,ASP.NET比微软以前的ASP(96年出现)有更强大的library,更好的稳定性。ASP.NET可以使用.NETFramework中所有组件(也就是说.NET能实现的,ASP.NET一样能实现)。
兰色精灵 该用户已被删除
6#
发表于 2015-2-9 23:07:37 | 只看该作者
有一丝可惜的是,这个系列太强了,Java阵营的朋友根本就是哑口无言...争论之火瞬间被浇灭,这不是我想这么早就看到的,但是值了。
透明 该用户已被删除
7#
发表于 2015-2-10 07:24:12 | 只看该作者
是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。
8#
发表于 2015-3-1 02:17:24 | 只看该作者
Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!
admin 该用户已被删除
9#
发表于 2015-3-1 22:00:27 | 只看该作者
但是目前在CGI中使用的最为广泛的是Perl语言。所以,狭义上所指的CGI程序一般都是指Perl程序,一般CGI程序的后缀都是.pl或者.cgi。
老尸 该用户已被删除
10#
发表于 2015-3-6 21:11:35 | 只看该作者
通过这次激烈的讨论,我从大家身上学到了太多,开阔了眼界,不管是支持我的还是骂我的,都感谢你们。
小女巫 该用户已被删除
11#
发表于 2015-3-7 12:14:40 | 只看该作者
由于JSP/Servlet都是基于Java的,所以它们也有Java语言的最大优点——平台无关性,也就是所谓的“一次编写,随处运行(WORA–WriteOnce,RunAnywhere)”。除了这个优点,JSP/Servlet的效率以及安全性也是相当惊人的。
分手快乐 该用户已被删除
12#
发表于 2015-3-8 10:45:35 | 只看该作者
Asp.net:首先来说,Asp.net和Asp没什么关系,看着像是升级版本什么的,其实没什么联系。Asp是脚本编程,用的是ASP语言,而ASP.net用的是C#语言,完全不同的东西。
莫相离 该用户已被删除
13#
发表于 2015-3-11 14:23:38 | 只看该作者
asp.net空间的支持有:ASP.NET1.1/虚拟目录/MicrosoftFrontPage2000扩展/CDONTS,同时他的网站上也提供了Asp.net的使用详解和程序源代码,相信对使用ASP.NET编程的程序员来说会非常有用哦!
深爱那片海 该用户已被删除
14#
发表于 2015-3-18 18:36:04 | 只看该作者
Servlet的形式和前面讲的CGI差不多,它是HTML代码和后台程序分开的。它们的启动原理也差不多,都是服务器接到客户端的请求后,进行应答。不同的是,CGI对每个客户请求都打开一个进程(Process)。
简单生活 该用户已被删除
15#
发表于 2015-3-26 09:13:29 | 只看该作者
这也就是最近几年来随着各种新的后台技术的诞生,CGI应用在Internet上越来越少的原因。CGI方式不适合大访问量的应用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 23:34

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表