关于SubSonic3.0生成的表名自动加复数(s)的“用户代码未处理SqlException,对象名'xxxs'无效”异常处理_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > 关于SubSonic3.0生成的表名自动加复数(s)的“用户代码未处理SqlException,对象名'xxxs'无效”异常处理

关于SubSonic3.0生成的表名自动加复数(s)的“用户代码未处理SqlException,对象名'xxxs'无效”异常处理

 2013/7/27 11:19:07  AllEmpty  博客园  我要评论(0)
  • 摘要:使用SubSonic3.0模版生成时,同2.2版本一样,都会自动在一些类似数据库要用到的关键后面加要s(复数),这里也是3.0的一个小Bug,在查询时由于插件并没有完全的去掉s,所以会产生“用户代码未处理SqlException,对象名'xxxs'无效”异常,无法对加了复数的表进行查询2.2处理就会简单,直接在config(配置文件)里配置SubSonicService标签,在该标签里的add子标签里设置fixPluralClassNames="false"就可以了
  • 标签:代码 用户 SQL 异常处理 异常

  使用SubSonic3.0模版生成时,同2.2版本一样,都会自动在一些类似数据库要用到的关键后面加要s(复数),这里也是3.0的一个小Bug,在查询时由于插件并没有完全的去掉s,所以会产生“用户代码未处理SqlException,对象名'xxxs'无效”异常,无法对加了复数的表进行查询

  2.2处理就会简单,直接在config(配置文件)里配置SubSonicService标签,在该标签里的add子标签里设置fixPluralClassNames="false"就可以了,而3.0后没有了这些配置,所以目前来看只能是直接修改模版了。

 

  首先打开SQLServer.ttinclude文件,按下图做修改处理,这样就可以将生成过程中加复数(s)的功能去掉

  

  

 

  然后打开SubSonic3.0源码的Extensions目录里的Objects.cs文件,按下图进行处理,这样就可以去掉查询时多加的复数了

  

 

  改完上面内容后,将3.0插件重新生成,就可能正常使用了。

 

 

  本文章为原创内容,转载请保留下面信息。

  发表本编内容,只要主为了和大家共同学习共同进步,有兴趣的朋友可以加加Q群:SubSonic3.0学习群(327360708)或Email给我(1654937#qq.com),大家一起探讨,由于本人工作很繁忙,如果疑问请先留言,回复不及时也请谅解。

  想了解更多SubSonic3.0的相关问题,请观注博客:http://www.cnblogs.com/EmptyFS/

 

发表评论
用户名: 匿名