0

我的几个 ASP.NET MVC 2 (.NET 3.5) 项目使用 SubSonic 2 作为项目数据层中的主要数据库访问器。这工作得很好,数据库中的所有内容都可以毫无问题地访问。但是,最近,我的工作实施了“零警告”政策,因此我们一直在检查所有项目,以消除项目中的任何警告(如果可能)。

有问题的项目只剩下 SubSonic 警告来消除或抑制,但是,这些是在生成的类本身中找到的,这使得删除它们很成问题。我收到的警告如下:

  • “...覆盖 Object.Equals(object o) 但不覆盖 Object.GetHashCode() ...”在 ActiveRecord.cs
  • “... .Name' 隐藏继承的成员 'SubSonic.Schema.DatabaseTable.Name'。如果要隐藏,请使用 new 关键字。...”在 Struct.cs
  • “在模板中发现了多个模板指令。除第一个之外的所有模板指令都将被忽略。模板指令的多个参数应在一个模板指令中指定”在 Settings.ttinclude 中
  • SQLServer.ttinclude 中的“编译转换:分配了变量‘参数’,但从未使用过它的值”
  • “不再支持 C# 2.0 和 C# 3.5 编译器。模板将始终使用版本 4 编译器而不是指定的 'v3.5' 编译。” 在上下文中.tt

我已经尝试到处寻找这些警告的解决方案,但到目前为止还没有运气。有没有其他人遇到过这样的警告,如果有,你是如何解决的?谢谢你。

4

1 回答 1

1

你不会喜欢这个的。

可以一劳永逸地解决您的问题的唯一选择是下载 SubSonic 源,对模板进行必要的更改,重新编译并使用您自己的二进制文件而不是库存下载。

从长远来看,我强烈建议完全放弃 SubSonic。这不值得痛苦。

于 2012-11-12T12:48:50.237 回答