早上在测试程序时,使用了Top这个属性,没想到马上抛出了个“未处理InvalidOperationException异常(关键字'TOP'附近有语法错误)”这个错误提示,见下图:
然后Debug一下,发现原来是TOP 100与后面的内容粘在一块了,如下图:
对插件代码做了修改后,还是同样的问题,再次跟踪得更深一点,看了一下最后生成的SQL,才发现原来是TOP的位置给放错了,我擦...
插件里设置TOP的文件和位置:
通过Debug,找到SQL生成模版,见下图:(注:{7}是我自己之前添加的,用来处理去重复(Distinct)用的)
在里面增加{8}这个参数(文件名:Sql2005Generator.cs)
然后修改这个文件的其他位置:(如图)
接着打开ANSISqlGenerator.cs,在里面添加GenerateTop()函数
找到GenerateCommandLine()函数,按图片注释掉设置TOP这一段代码
然后将插件重新生成一下就OK了
本文章为原创内容,转载请保留下面信息。
发表本编内容,只要主为了和大家共同学习共同进步,有兴趣的朋友可以加加Q群:SubSonic3.0学习群(327360708)或Email给我(1654937#qq.com),大家一起探讨,由于本人工作很繁忙,如果疑问请先留言,回复不及时也请谅解。
想了解更多SubSonic3.0的相关问题,请观注博客:http://www.cnblogs.com/EmptyFS/